Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Войти | Зарегистрироваться )



2 страниц V   1 2 >

>  Как сделать связь в запросе по части ячейки данных
Svetas_2024
Отправлено: 18.01.24, 12:49


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Svetas_2024 @ Сегодня, 10:09 * ,
засунула в подзапросы чтобы потом сгруппировать
 Запрос = Новый Запрос("ВЫБРАТЬ      
     //задачи
      |   ЗапросЗадачи.Status_Task,
      |   ЗапросЗадачи.ID,
      |   ЗапросЗадачи.NAME,
      |   ЗапросЗадачи.LAST_NAME,
      |   ЗапросЗадачи.LOGIN,
      |   ЗапросЗадачи.WORK_POSITION,
      |   ЗапросЗадачи.WORK_DEPARTMENT,
      |   ЗапросЗадачи.WORK_COMPANY,
      |   ЗапросЗадачи.TASK_ID,
      |   ЗапросЗадачи.USER_ID,
      |   ЗапросЗадачи.USER_FIO,
      |   ЗапросЗадачи.USER_TYPE,
      |   ЗапросЗадачи.TITLE,
      |   ЗапросЗадачи.PRIORITY,
      |   ЗапросЗадачи.STATUS,
      |   ЗапросЗадачи.DATE_START,
      |   ЗапросЗадачи.CLOSED_DATE,
      |   ЗапросЗадачи.START_DATE_PLAN,
      |   ЗапросЗадачи.END_DATE_PLAN,
      |   ЗапросЗадачи.CREATED_DATE,
      |   ЗапросЗадачи.CHANGED_DATE,
      |   ЗапросЗадачи.STATUS_CHANGED_DATE,
      |   ЗапросЗадачи.ACTIVITY_DATE,
      |   ЗапросЗадачи.DEADLINE,
      |   ЗапросЗадачи.RESPONSIBLE_ID,
      |   ЗапросЗадачи.UF_DEPARTMENT,
      |   ЗапросЗадачи.UF_HEAD,
      |   ЗапросЗадачи.CREATED_BY,
      |   Null
      | ИЗ
      |( ВЫБРАТЬ
      |   ""задачи"" как Status_Task,
      |   ВЫРАЗИТЬ (b_user.ID КАК Число(10)) как ID,
      |   ВЫРАЗИТЬ (b_user.NAME КАК СТРОКА(200)) как NAME,
      |   ВЫРАЗИТЬ (b_user.LAST_NAME КАК СТРОКА(200)) как LAST_NAME,
      |   ВЫРАЗИТЬ (b_user.LOGIN КАК СТРОКА(200)) как LOGIN,
      |   ВЫРАЗИТЬ (b_user.WORK_POSITION КАК СТРОКА(200)) как WORK_POSITION,
      |   ВЫРАЗИТЬ (b_user.WORK_DEPARTMENT КАК СТРОКА(200)) как WORK_DEPARTMENT,
      |   ВЫРАЗИТЬ (b_user.WORK_COMPANY  КАК СТРОКА(200)) как WORK_COMPANY,
      |   sk_task_change_key_person.TASK_ID,
      |   ВЫРАЗИТЬ (sk_task_change_key_person.USER_ID КАК Число(10)) как USER_ID,
      |   sk_task_change_key_person.USER_FIO,
      |   ВЫРАЗИТЬ (sk_task_change_key_person.USER_TYPE КАК СТРОКА(13)) как USER_TYPE,
      |   b_tasks.TITLE,
      |      ВЫРАЗИТЬ (b_tasks.DESCRIPTION КАК СТРОКА(200)) как DESCRIPTION,
      |   b_tasks.PRIORITY,
      |   b_tasks.STATUS,
      |   b_tasks.DATE_START,
      |   b_tasks.CLOSED_DATE,
      |b_tasks.START_DATE_PLAN,
      |b_tasks.END_DATE_PLAN,
      |b_tasks.CREATED_DATE,
      |b_tasks.CHANGED_DATE,
      |b_tasks.STATUS_CHANGED_DATE,
      |b_tasks.ACTIVITY_DATE,
      |b_tasks.DEADLINE,
      |b_tasks.RESPONSIBLE_ID,
      |ВЫРАЗИТЬ(Прав(""000""+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"",""""),""}"",""""), 3) КАК СТРОКА(5)) как UF_DEPARTMENT,
      |b_uts_iblock_5_section.UF_HEAD,
      |b_tasks.CREATED_BY    
      |  
      |ИЗ
      |   ВнешнийИсточникДанных.Битрикс.Таблица.b_user КАК b_user
      |    ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.sk_task_change_key_person КАК sk_task_change_key_person
      |       ПО b_user.ID=sk_task_change_key_person.USER_ID  
      |    ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_uts_user КАК b_uts_user
      |       ПО b_user.ID=b_uts_user.VALUE_ID
      |       ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_uts_iblock_5_section КАК  b_uts_iblock_5_section
      |       ПО ВЫРАЗИТЬ(Прав(""000""+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"",""""),""}"",""""), 3) КАК СТРОКА(5))= b_uts_iblock_5_section.VALUE_ID
      |    ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_tasks КАК b_tasks
      |       ПО b_tasks.ID=sk_task_change_key_person.TASK_ID
      |    и b_tasks.CREATED_BY=b_uts_iblock_5_section.UF_HEAD
      |ГДЕ
        |   b_tasks.CLOSED_DATE МЕЖДУ  НАЧАЛОПЕРИОДА(&Дата1, МЕСЯЦ) И КОНЕЦПЕРИОДА(&Дата1, МЕСЯЦ)
        | и  (ВЫРАЗИТЬ (sk_task_change_key_person.USER_TYPE КАК СТРОКА(13))=&Состояние1
        |или  ВЫРАЗИТЬ (sk_task_change_key_person.USER_TYPE КАК СТРОКА(13))=&Состояние2)
        |  и  ВЫРАЗИТЬ (sk_task_change_key_person.USER_TYPE КАК СТРОКА(13))<>&Состояние3) как ЗапросЗадачи
    
         | СГРУППИРОВАТЬ ПО
        |          ЗапросЗадачи.ID,
        |          ЗапросЗадачи.USER_ID,
                   |          ЗапросЗадачи.NAME,  
            |          ЗапросЗадачи.LAST_NAME,  
        |          ЗапросЗадачи.USER_FIO,  
        |          ЗапросЗадачи.Status_Task,
                |          ЗапросЗадачи.LOGIN,
            |        ЗапросЗадачи.USER_TYPE,
                |          ЗапросЗадачи.WORK_POSITION,
        |          ЗапросЗадачи.WORK_DEPARTMENT,
        |          ЗапросЗадачи.WORK_COMPANY,
        |          ЗапросЗадачи.TASK_ID,
        |          ЗапросЗадачи.TITLE,
        |          ЗапросЗадачи.PRIORITY,
        |          ЗапросЗадачи.STATUS,
         |          ЗапросЗадачи.DATE_START,
        |          ЗапросЗадачи.CLOSED_DATE,
        |          ЗапросЗадачи.START_DATE_PLAN,
        |          ЗапросЗадачи.END_DATE_PLAN,
        |          ЗапросЗадачи.CREATED_DATE,
        |          ЗапросЗадачи.CHANGED_DATE,
        |          ЗапросЗадачи.STATUS_CHANGED_DATE,
        |          ЗапросЗадачи.ACTIVITY_DATE,
        |          ЗапросЗадачи.DEADLINE,
        |          ЗапросЗадачи.RESPONSIBLE_ID,
        |          ЗапросЗадачи.UF_DEPARTMENT,
        |          ЗапросЗадачи.UF_HEAD,
        |          ЗапросЗадачи.CREATED_BY
    
         |ОБЪЕДИНИТЬ ВСЕ       
        //просрочки
        
        
      |ВЫБРАТЬ
      |   ЗапросПросрочки.Status_Task,
          |   ЗапросПросрочки.ID,
      |   ЗапросПросрочки.NAME,
      |   ЗапросПросрочки.LAST_NAME,
      |   ЗапросПросрочки.LOGIN,
      |   ЗапросПросрочки.WORK_POSITION,
      |   ЗапросПросрочки.WORK_DEPARTMENT,
      |   ЗапросПросрочки.WORK_COMPANY,
      |   ЗапросПросрочки.TASK_ID,
      |   ЗапросПросрочки.USER_ID,
      |   ЗапросПросрочки.USER_FIO,
      |   ЗапросПросрочки.USER_TYPE,
      |   ЗапросПросрочки.TITLE,
      |   ЗапросПросрочки.PRIORITY,
      |   ЗапросПросрочки.STATUS,
      |   ЗапросПросрочки.DATE_START,
      |   ЗапросПросрочки.CLOSED_DATE,
      |   ЗапросПросрочки.START_DATE_PLAN,
      |   ЗапросПросрочки.END_DATE_PLAN,
      |   ЗапросПросрочки.CREATED_DATE,
      |   ЗапросПросрочки.CHANGED_DATE,
      |   ЗапросПросрочки.STATUS_CHANGED_DATE,
      |   ЗапросПросрочки.ACTIVITY_DATE,
      |   ЗапросПросрочки.DEADLINE,
      |   ЗапросПросрочки.RESPONSIBLE_ID,
      |   ЗапросПросрочки.UF_DEPARTMENT,
      |   ЗапросПросрочки.UF_HEAD,
      |   ЗапросПросрочки.CREATED_BY,
      |   ЗапросПросрочки.IGNORE_DELAY
      |ИЗ
      |(    ВЫБРАТЬ
      |   ""просрочки"" как Status_Task,
      |   ВЫРАЗИТЬ (b_user.ID КАК Число(10)) как ID,
      |   ВЫРАЗИТЬ (b_user.NAME КАК СТРОКА(200)) как NAME,
      |   ВЫРАЗИТЬ (b_user.LAST_NAME КАК СТРОКА(200)) как LAST_NAME,
      |   ВЫРАЗИТЬ (b_user.LOGIN КАК СТРОКА(200)) как LOGIN,
      |   ВЫРАЗИТЬ (b_user.WORK_POSITION КАК СТРОКА(200)) как WORK_POSITION,
      |   ВЫРАЗИТЬ (b_user.WORK_DEPARTMENT КАК СТРОКА(200)) как WORK_DEPARTMENT,
      |   ВЫРАЗИТЬ (b_user.WORK_COMPANY  КАК СТРОКА(200)) как WORK_COMPANY,
      |   sk_task_delay_deadline.TASK_ID,
      |   ВЫРАЗИТЬ (sk_task_delay_deadline.USER_ID КАК Число(10)) как USER_ID,
      |    sk_task_delay_deadline.USER_FIO,
      |   ВЫРАЗИТЬ (sk_task_delay_deadline.USER_TYPE КАК СТРОКА(13)) как USER_TYPE,
      |   b_tasks.TITLE,
      |   b_tasks.PRIORITY,
      |   b_tasks.STATUS,
      |   b_tasks.DATE_START,
      |   b_tasks.CLOSED_DATE,
      |b_tasks.START_DATE_PLAN,
      |b_tasks.END_DATE_PLAN,
      |b_tasks.CREATED_DATE,
      |b_tasks.CHANGED_DATE,
      |b_tasks.STATUS_CHANGED_DATE,
      |b_tasks.ACTIVITY_DATE,
      |b_tasks.DEADLINE,
      |b_tasks.RESPONSIBLE_ID,
      |ВЫРАЗИТЬ(Прав(""000""+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"",""""),""}"",""""), 3) КАК СТРОКА(5)) как UF_DEPARTMENT,
      |b_uts_iblock_5_section.UF_HEAD,
      |b_tasks.CREATED_BY,
      |sk_task_delay_deadline.IGNORE_DELAY
      |         
      |ИЗ
      |   ВнешнийИсточникДанных.Битрикс.Таблица.b_user КАК b_user
      |    ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.sk_task_delay_deadline  КАК  sk_task_delay_deadline
      |    ПО b_user.ID=sk_task_delay_deadline.USER_ID
      |       ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_uts_user КАК b_uts_user
      |       ПО b_user.ID=b_uts_user.VALUE_ID  
      |       ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_uts_iblock_5_section КАК  b_uts_iblock_5_section
      |       ПО ВЫРАЗИТЬ(Прав(""000""+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"",""""),""}"",""""), 3) КАК СТРОКА(5))= b_uts_iblock_5_section.VALUE_ID
    
      |    ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_tasks КАК b_tasks
      |       ПО b_tasks.ID=sk_task_delay_deadline.TASK_ID
      |    и b_tasks.CREATED_BY=b_uts_iblock_5_section.UF_HEAD

      |ГДЕ
      |   b_tasks.CLOSED_DATE МЕЖДУ  НАЧАЛОПЕРИОДА(&Дата1, МЕСЯЦ) И КОНЕЦПЕРИОДА(&Дата1, МЕСЯЦ)) как ЗапросПросрочки
      
      
        | СГРУППИРОВАТЬ ПО
        |          ЗапросПросрочки.ID,
        |          ЗапросПросрочки.USER_ID,
           |          ЗапросПросрочки.NAME,  
        |          ЗапросПросрочки.LAST_NAME,  
        |          ЗапросПросрочки.USER_FIO,  
        |          ЗапросПросрочки.Status_Task,
        |          ЗапросПросрочки.LOGIN,
        |           ЗапросПросрочки.USER_TYPE,
        |          ЗапросПросрочки.WORK_POSITION,
        |          ЗапросПросрочки.WORK_DEPARTMENT,
        |          ЗапросПросрочки.WORK_COMPANY,
        |          ЗапросПросрочки.TASK_ID,
        |          ЗапросПросрочки.TITLE,
        |          ЗапросПросрочки.PRIORITY,
        |          ЗапросПросрочки.STATUS,
         |          ЗапросПросрочки.DATE_START,
        |          ЗапросПросрочки.CLOSED_DATE,
        |          ЗапросПросрочки.START_DATE_PLAN,
        |          ЗапросПросрочки.END_DATE_PLAN,
        |          ЗапросПросрочки.CREATED_DATE,
        |          ЗапросПросрочки.CHANGED_DATE,
           |          ЗапросПросрочки.STATUS_CHANGED_DATE,
           |          ЗапросПросрочки.ACTIVITY_DATE,
           |          ЗапросПросрочки.DEADLINE,
        |          ЗапросПросрочки.RESPONSIBLE_ID,
        |          ЗапросПросрочки.UF_DEPARTMENT,
        |          ЗапросПросрочки.UF_HEAD,
        |          ЗапросПросрочки.CREATED_BY,
        |          ЗапросПросрочки.IGNORE_DELAY
    
         |");


но вылетает
Цитата
по причине:
Ошибка выполнения запроса
по причине:
Ошибка внешней базы данных:
ошибка при выполнении запроса
по причине:
Ошибка ODBC. SQLSTATE: HY000
Номер ошибки: 1370
Описание: [MySQL][ODBC 8.2(a) Driver][mysqld-5.7.31-34]execute command denied to user 'Analyst'@'%' for routine 'dbalupro.REGEXP_REPLACE'


Svetas_2024 @ Сегодня, 11:12 * ,
как исправить? помогите пожалуйста

Svetas_2024 @ Сегодня, 11:13 * ,
поменяла
|       ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_uts_iblock_5_section КАК  b_uts_iblock_5_section
      |       ПО ВЫРАЗИТЬ(СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"",""""),""}"","""") КАК СТРОКА(3))= ВЫРАЗИТЬ(b_uts_iblock_5_section.VALUE_ID КАК СТРОКА(3))

так как b_uts_iblock_5_section.VALUE_ID -число
ошибка
Цитата
Несовместимые типы "ВЫРАЗИТЬ"
ПО ВЫРАЗИТЬ (СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),";",""),"}","") КАК СТРОКА(3))= <<?>>ВЫРАЗИТЬ(b_uts_iblock_5_section.VALUE_ID КАК СТРОКА(3))


как исправить? помогите пожалуйста

Svetas_2024 @ Сегодня, 11:35 * ,
вариант
 |       ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_uts_iblock_5_section КАК  b_uts_iblock_5_section
      |     ПО b_uts_iblock_5_section.VALUE_ID в (ВЫРАЗИТЬ (b_uts_user.UF_DEPARTMENT КАК СТРОКА(100)))
даёт ошибку
Цитата
Ошибка выполнения запроса
по причине:
Ошибка внешней базы данных:
ошибка при выполнении запроса
по причине:
Ошибка ODBC. SQLSTATE: HY000
Номер ошибки: 1370
Описание: [MySQL][ODBC 8.2(a) Driver][mysqld-5.7.31-34]execute command denied to user 'Analyst'@'%' for routine 'dbalupro.REGEXP_REPLACE'


вариант
 ПО (ВЫРАЗИТЬ (b_uts_iblock_5_section.VALUE_ID КАК СТРОКА(100)) подобно (ВЫРАЗИТЬ (b_uts_user.UF_DEPARTMENT КАК СТРОКА(100)))
даёт ошибку
Цитата
по причине:
{(70, 9)}: Несовместимые типы "ВЫРАЗИТЬ"
ПО (<<?>>ВЫРАЗИТЬ (b_uts_iblock_5_section.VALUE_ID КАК СТРОКА(100))) подобно (ВЫРАЗИТЬ (b_uts_user.UF_DEPARTMENT КАК СТРОКА(100)))


т.е. обработать строковыми функциями - ошибка , в списке - ошибка, подобно - ошибка.
Кто знает как правильно обратиться?

Svetas_2024 @ Сегодня, 12:01 * ,
вариант
 |       ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_uts_iblock_5_section КАК  b_uts_iblock_5_section
      |       ПО ВЫРАЗИТЬ (СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"",""""),""}"","""") КАК СТРОКА(3))=  ВЫРАЗИТЬ(b_uts_iblock_5_section.VALUE_ID КАК СТРОКА(3))

ошибка
Цитата
Ошибка исполнения отчета
по причине:
Ошибка при выполнении обработчика - 'ПриКомпоновкеРезультата'
по причине:
{Отчет.Отчет1.МодульОбъекта(276)}: Ошибка при вызове метода контекста (Выполнить)

по причине:
{(70, 116)}: Несовместимые типы "ВЫРАЗИТЬ"
ПО ВЫРАЗИТЬ (СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),";",""),"}","") КАК СТРОКА(3))= <<?>>ВЫРАЗИТЬ(b_uts_iblock_5_section.VALUE_ID КАК СТРОКА(3))


да b_uts_iblock_5_section.VALUE_ID - число

Svetas_2024 @ Сегодня, 12:10 * ,
 ПО ВЫРАЗИТЬ(Прав(""000""+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"",""""),""}"",""""), 3) КАК СТРОКА(5))= b_uts_iblock_5_section.VALUE_ID
даёт ошибку
Цитата
о причине:
Ошибка выполнения запроса
по причине:
Ошибка внешней базы данных:
ошибка при выполнении запроса
по причине:
Ошибка ODBC. SQLSTATE: HY000
Номер ошибки: 1370
Описание: [MySQL][ODBC 8.2(a) Driver][mysqld-5.7.31-34]execute command denied to user 'Analyst'@'%' for routine 'dbalupro.REGEXP_REPLACE'


Svetas_2024 @ Сегодня, 12:30 * ,
вариант
 ПО ВЫРАЗИТЬ(Прав(""000""+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"",""""),""}"",""""), 3) КАК Число(5))= b_uts_iblock_5_section.VALUE_ID
даёт ошибку
Цитата
Ошибка исполнения отчета
по причине:
Ошибка при выполнении обработчика - 'ПриКомпоновкеРезультата'
по причине:
{Отчет.Отчет1.МодульОбъекта(276)}: Ошибка при вызове метода контекста (Выполнить)

по причине:
{(70, 8)}: Несовместимые типы "ВЫРАЗИТЬ"
ПО <<?>>ВЫРАЗИТЬ(Прав("000"+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),";",""),"}",""), 3) КАК Число(5))= b_uts_iblock_5_section.VALUE_ID


Svetas_2024 @ Сегодня, 12:36 * ,
т.е. обработать строковыми функциями - ошибка , в списке - ошибка, подобно - ошибка.
Кто знает как правильно обратиться? Помогите пожалуйста

Svetas_2024 @ Сегодня, 12:37 * ,
Vofka помоги пожалуйста

Svetas_2024 @ Сегодня, 12:41 * ,
      |       ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_uts_iblock_5_section КАК  b_uts_iblock_5_section
      |     ПО ВЫРАЗИТЬ(Прав(""000""+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"",""""),""}"",""""), 3) КАК СТРОКА(5)) подобно ВЫРАЗИТЬ(b_uts_iblock_5_section.VALUE_ID  КАК СТРОКА(5))

даёт ошибку
Цитата
по причине:
{(70, 137)}: Несовместимые типы "ВЫРАЗИТЬ"
ПО ВЫРАЗИТЬ(Прав("000"+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),";",""),"}",""), 3) КАК СТРОКА(5)) подобно <<?>>ВЫРАЗИТЬ(b_uts_iblock_5_section.VALUE_ID КАК СТРОКА(5))


Svetas_2024 @ Сегодня, 12:48 * ,
Кто знает как правильно обратиться? Помогите пожалуйста
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178232 · Ответов: 3 · Просмотров: 376
 

>  как условия отбора запроса (на СКД) перенести в связь наборов данных с возможностью настройки пользователем отборов
Svetas_2024
Отправлено: 18.01.24, 10:16


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Svetas_2024 @ 13.01.24, 7:42 * ,
Svetas_2024 @ Сегодня, 9:49 * ,
Vofka помоги пожалуйста
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178225 · Ответов: 3 · Просмотров: 703
 

>  Как сделать связь в запросе по части ячейки данных
Svetas_2024
Отправлено: 18.01.24, 10:09


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Svetas_2024 @ Сегодня, 0:24 * ,
сделала
 |       ПО ВЫРАЗИТЬ(Прав(""000""+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"",""""),""}"",""""), 3) КАК СТРОКА(5))= b_uts_iblock_5_section.VALUE_ID


но как его в группировку засунуть
-т.е. в строку
 | СГРУППИРОВАТЬ ПО

- пошла ошибка
Цитата
Ошибка при выполнении обработчика - 'ПриКомпоновкеРезультата'
по причине:
{Отчет.Отчет1.МодульОбъекта(221)}: Ошибка при вызове метода контекста (Выполнить)

по причине:
{(27, 55)}: Поле не входит в группу "b_uts_user.UF_DEPARTMENT"
ВЫРАЗИТЬ(Прав("000"+СтрЗаменить(СтрЗаменить(ПОДСТРОКА(<<?>>b_uts_user.UF_DEPARTMENT,12,3),";",""),"}",""), 3) КАК СТРОКА(5)) как UF_DEPARTMENT,


Svetas_2024 @ Сегодня, 9:49 * ,
Vofka помоги пожалуйста
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178223 · Ответов: 3 · Просмотров: 376
 

>  Как сделать связь в запросе по части ячейки данных
Svetas_2024
Отправлено: 18.01.24, 0:24


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Добрый день, уважаемые форумчани. Прошу помощи
1С:Предприятие 8.3 (8.3.15.1869), "Управление производственным предприятием для Украины", редакция 1.3 (1.3.66.1) , формы обычные (не управляемые)

подключаюсь к MySQL через внешнее соединение (база Битрикса 24), выгружаю задачи Битрикса 24, но в одной из таблиц Битрикса 24 (где лежит номер отдела, сотрудника, по которому нужно найти руководителя сотрудника) содержит данные
Цитата
a:1:{i:0;i:311;}

и поле с такими данными должно участвовать в связывании с другими полями, но только в части числа "311" или числа "53" - т.е. в части строки из {i:0;i:311;} или из {i:0;i:53;}.
пытаюсь это записать кодом
 
                                                        |       ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.Битрикс.Таблица.b_uts_iblock_5_section КАК  b_uts_iblock_5_section
                                                    |       ПО ВЫРАЗИТЬ(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),"";"","""") КАК Число(3))= b_uts_iblock_5_section.VALUE_ID

Т.е.
Цитата
- Необходимо оставить задачи которые были поставлены прямым руководителем.
Для того чтобы получить руководителя отдела необходимо выбрать первый отдел из таблицы b_uts_user поля UF_DEPARTMENT (отделы в которых состоит пользователь). -
Получив id отдела необходимо получить значение из таблицы b_uts_iblock_5_section поле UF_HEAD (руководитель отдела) таким образом был получен руководитель отдела.


но вылетает по ошибке
Цитата
по причине:
{(39, 8)}: Несовместимые типы "ВЫРАЗИТЬ"
ПО <<?>>ВЫРАЗИТЬ(СтрЗаменить(ПОДСТРОКА(b_uts_user.UF_DEPARTMENT,12,3),";","") КАК Число(3))= b_uts_iblock_5_section.VALUE_ID


Как такое можно исправить, помогите пожалуйста. Заранее спасибо.
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178222 · Ответов: 3 · Просмотров: 376
 

>  Как правильно настроить Характеристики в СКД в УПП
Svetas_2024
Отправлено: 16.01.24, 22:01


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Добрый день, уважаемые форумчани. Прошу помощи
1С:Предприятие 8.3 (8.3.15.1869), "Управление производственным предприятием для Украины", редакция 1.3 (1.3.66.1) , формы обычные (не управляемые)
вопрос
вопрос
подскажите пожалуйста как правильно настроить характеристики в СКД "Управление производственным предприятием" (что бы по ним был подключаемый/отключаемый отбор пользователя)

ВЫБРАТЬ
    Номенклатура.Код КАК Код,
    ВЫРАЗИТЬ(Номенклатура.Наименование КАК СТРОКА(200)) КАК Наименование,
    Номенклатура.Артикул КАК Артикул,
    Номенклатура.ЕдиницаДляОтчетов.Вес КАК Вес,
    Номенклатура.ЕдиницаДляОтчетов.Объем КАК ЕдиницаДляОтчетовОбъем,
    Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    НоменклатурныеГруппы.Ссылка КАК НоменклатурныеГруппы,
    Номенклатура.ОсновноеИзображение КАК ОсновноеИзображение,
    ВЫРАЗИТЬ(Номенклатура.ОсновноеИзображение.ИмяФайла КАК СТРОКА(20)) КАК ИмяФайла,
    Номенклатура.ОсновноеИзображение.Объект КАК ОсновноеИзображениеХранилище,
    Номенклатура.ОтветственныйМенеджерЗаПокупки КАК ОтветственныйМенеджерЗаПокупки,
    ХарактеристикиНоменклатуры.Представление КАК Представление,
    ХарактеристикиНоменклатуры.Ссылка КАК Ссылка,
    СвойстваНом.Свойство.Представление КАК СвойствоПредстНом,
    СвойстваНом.Значение КАК ЗначениеНом,
    СвойстваНом.Свойство.Код КАК СвойствоКодНом,
    СвойстваНом.Свойство.Предопределенный КАК СвойствоПредопНом,
    ХарактеристикиНоменклатуры.Длина КАК Длина,
    НоменклатурныеГруппы.Представление КАК НоменклатурнаяГруппа,
    Номенклатура.Родитель КАК Родитель,
    СвойстваРод.Свойство КАК Свойство,
    СвойстваРод.Значение КАК Значение,
    СвойстваГр.Свойство КАК Свойство1,
    СвойстваГр.Значение КАК Значение1,
    СвойстваВид.Свойство КАК Свойство2,
    СвойстваВид.Значение КАК Значение2,
    ХранилищеДополнительнойИнформации.Ссылка КАК СсылкаКартинка,
    ХранилищеДополнительнойИнформации.Хранилище КАК Хранилище
ИЗ
    Справочник.Номенклатура КАК Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыНоменклатуры КАК ВидыНоменклатуры
        ПО Номенклатура.ВидНоменклатуры = ВидыНоменклатуры.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НоменклатурныеГруппы КАК НоменклатурныеГруппы
        ПО Номенклатура.НоменклатурнаяГруппа = НоменклатурныеГруппы.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХарактеристикиНоменклатуры КАК ХарактеристикиНоменклатуры
        ПО (ХарактеристикиНоменклатуры.Владелец = Номенклатура.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваНом
        ПО (СвойстваНом.Объект = Номенклатура.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваГр
        ПО (СвойстваГр.Объект = Номенклатура.НоменклатурнаяГруппа.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваВид
        ПО (СвойстваВид.Объект = ВидыНоменклатуры.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваРод
        ПО (СвойстваВид.Объект = Номенклатура.Родитель.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХранилищеДополнительнойИнформации КАК ХранилищеДополнительнойИнформации
        ПО Номенклатура.ОсновноеИзображение = ХранилищеДополнительнойИнформации.Ссылка
{ХАРАКТЕРИСТИКИ
    ТИП(Справочник.Номенклатура)
    ВИДЫХАРАКТЕРИСТИК ПланВидовХарактеристик.СвойстваОбъектов
    ПОЛЕКЛЮЧА Ссылка
    ПОЛЕИМЕНИ Наименование
    ПОЛЕТИПАЗНАЧЕНИЯ ТипЗначения
    ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.ЗначенияСвойствОбъектов
    ПОЛЕОБЪЕКТА Объект
    ПОЛЕВИДА Свойство
    ПОЛЕЗНАЧЕНИЯ Значение }


вроде есть -всё прописано, а отбор по характеристикам не работает. Помогите, пожалуйста в чем ошибка?

  Форум: Корзина · Просмотр сообщения: #178211 · Ответов: 1 · Просмотров: 820
 

>  Как передать параметры в запрос MySQL
Svetas_2024
Отправлено: 16.01.24, 10:46


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


sava1 @ Сегодня, 8:15 * ,
спасибо
заработало
 Запрос = Новый Запрос("ВЫБРАТЬ
      |   sk_task_change_key_person.TASK_ID,
      |   sk_task_change_key_person.USER_ID,
      |   sk_task_change_key_person.USER_FIO,
      |   ВЫРАЗИТЬ (sk_task_change_key_person.USER_TYPE КАК СТРОКА(13))
      |ИЗ
      |   ВнешнийИсточникДанных.Битрикс.Таблица.sk_task_change_key_person КАК sk_task_change_key_person    
      |ГДЕ
        |      ВЫРАЗИТЬ (sk_task_change_key_person.TASK_ID КАК Число(10))=&Задача
        |   и  (ВЫРАЗИТЬ (sk_task_change_key_person.USER_TYPE КАК СТРОКА(13))=&Состояние1
        |  или  ВЫРАЗИТЬ (sk_task_change_key_person.USER_TYPE КАК СТРОКА(13))=&Состояние2)
        |    и  ВЫРАЗИТЬ (sk_task_change_key_person.USER_TYPE КАК СТРОКА(13))<>&Состояние3
        |");
    Запрос.УстановитьПараметр("Состояние1", "Соисполнитель");
    Запрос.УстановитьПараметр("Состояние2", "Ответственный");  
    Запрос.УстановитьПараметр("Состояние3", "Постановщик");  
    Запрос.УстановитьПараметр("Задача", 50793);

    Таблица = Запрос.Выполнить().Выгрузить();
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178208 · Ответов: 4 · Просмотров: 1883
 

>  Как передать параметры в запрос MySQL
Svetas_2024
Отправлено: 16.01.24, 10:09


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


sava1 @ Сегодня, 8:15 * ,
ошибку даёт
Цитата
Ошибка при вызове метода контекста (Выполнить)
{Отчет.Отчет1.Форма.ФормаОтчета.Форма(46)}: Таблица = Запрос.Выполнить().Выгрузить();
по причине:
{(9, 6)}: Неверные параметры "ПОДОБНО"
<<?>>sk_task_change_key_person.TASK_ID ПОДОБНО &Задача




у USER_TYPE - Короткий текст
USER_ID -Числовой
и в чём ошибка?
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178203 · Ответов: 4 · Просмотров: 1883
 

>  Как передать параметры в запрос MySQL
Svetas_2024
Отправлено: 15.01.24, 22:42


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Добрый день, уважаемые форумчани. Прошу помощи
1С:Предприятие 8.3 (8.3.15.1869), "Управление производственным предприятием для Украины", редакция 1.3 (1.3.66.1) , формы обычные (не управляемые)
вопрос

подключаюсь к MySQL
 Параметры = ВнешниеИсточникиДанных.Битрикс.ПолучитьОбщиеПараметрыСоединения();
Параметры.АутентификацияСтандартная = Истина;
Параметры.ИмяПользователя ="Analyst";
  Параметры.СтрокаСоединения = "
|DRIVER={MySQL ODBC 8.2 ANSI Driver};
|PORT= 62394;
|DATABASE=dbalupro;
|UID=Analyst;
|LANGUAGE=русский";

Параметры.СУБД = "MySQL";
ВнешниеИсточникиДанных.Битрикс.УстановитьОбщиеПараметрыСоединения(Параметры);
ВнешниеИсточникиДанных.Битрикс.УстановитьПараметрыСоединенияПользователя(ИмяПользователя(), Параметры);
ВнешниеИсточникиДанных.Битрикс.УстановитьПараметрыСоединенияСеанса(Параметры);    

Попытка
    ВнешниеИсточникиДанных.Битрикс.УстановитьСоединение();
Исключение

КонецПопытки;

но вот как передать параметры в запрос
Запрос = Новый Запрос("ВЫБРАТЬ
          |   sk_task_change_key_person.TASK_ID,
      |   sk_task_change_key_person.USER_ID,
      |   sk_task_change_key_person.USER_FIO,
      |   sk_task_change_key_person.USER_TYPE
      |ИЗ
          |   ВнешнийИсточникДанных.Битрикс.Таблица.sk_task_change_key_person КАК sk_task_change_key_person    
      |ГДЕ
       |     sk_task_change_key_person.TASK_ID =&Задача
       |");

    Запрос.УстановитьПараметр("Задача", "50793");

    Таблица = Запрос.Выполнить().Выгрузить();
    
    Выборка = Запрос.Выполнить().Выбрать();
    Пока Выборка.Следующий() Цикл
        Сообщить(выборка.USER_FIO);
    конеццикла;

параметр
&Задача
не видит и запрос не работает, но если заменить значением "50793", то работает.
Но нужно передать строковые параметры
Запрос.УстановитьПараметр("Состояние1", "Соисполнитель");
для
|  и  (sk_task_change_key_person.USER_TYPE="Состояние1"
- Вопрос как это сделать (передать строковые параметры)?
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178200 · Ответов: 4 · Просмотров: 1883
 

>  Не подключается к MYSQL
Svetas_2024
Отправлено: 15.01.24, 19:02


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


robot1 @ 24.04.14, 22:00 * т спасибо за строку подключений - такая же ошибка была но 50% Вашей строки подключений ее исправило
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178199 · Ответов: 1 · Просмотров: 3094
 

>  Как правильно настроить Характеристики в СКД в УПП
Svetas_2024
Отправлено: 14.01.24, 8:56


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Добрый день, уважаемые форумчани. Прошу помощи
1С:Предприятие 8.3 (8.3.15.1869), "Управление производственным предприятием для Украины", редакция 1.3 (1.3.66.1) , формы обычные (не управляемые)
вопрос
подскажите пожалуйста как правильно настроить характеристики в СКД "Управление производственным предприятием для Украины"
ВЫБРАТЬ
    Номенклатура.Код КАК Код,
    ВЫРАЗИТЬ(Номенклатура.Наименование КАК СТРОКА(200)) КАК Наименование,
    Номенклатура.Артикул КАК Артикул,
    Номенклатура.ЕдиницаДляОтчетов.Вес КАК Вес,
    Номенклатура.ЕдиницаДляОтчетов.Объем КАК ЕдиницаДляОтчетовОбъем,
    Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    НоменклатурныеГруппы.Ссылка КАК НоменклатурныеГруппы,
    Номенклатура.ОсновноеИзображение КАК ОсновноеИзображение,
    ВЫРАЗИТЬ(Номенклатура.ОсновноеИзображение.ИмяФайла КАК СТРОКА(20)) КАК ИмяФайла,
    Номенклатура.ОсновноеИзображение.Объект КАК ОсновноеИзображениеХранилище,
    Номенклатура.ОтветственныйМенеджерЗаПокупки КАК ОтветственныйМенеджерЗаПокупки,
    ХарактеристикиНоменклатуры.Представление КАК Представление,
    ХарактеристикиНоменклатуры.Ссылка КАК Ссылка,
    СвойстваНом.Свойство.Представление КАК СвойствоПредстНом,
    СвойстваНом.Значение КАК ЗначениеНом,
    СвойстваНом.Свойство.Код КАК СвойствоКодНом,
    СвойстваНом.Свойство.Предопределенный КАК СвойствоПредопНом,
    ХарактеристикиНоменклатуры.Длина КАК Длина,
    НоменклатурныеГруппы.Представление КАК НоменклатурнаяГруппа,
    Номенклатура.Родитель КАК Родитель,
    СвойстваРод.Свойство КАК Свойство,
    СвойстваРод.Значение КАК Значение,
    СвойстваГр.Свойство КАК Свойство1,
    СвойстваГр.Значение КАК Значение1,
    СвойстваВид.Свойство КАК Свойство2,
    СвойстваВид.Значение КАК Значение2,
    ХранилищеДополнительнойИнформации.Ссылка КАК СсылкаКартинка,
    ХранилищеДополнительнойИнформации.Хранилище КАК Хранилище
ИЗ
    Справочник.Номенклатура КАК Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыНоменклатуры КАК ВидыНоменклатуры
        ПО Номенклатура.ВидНоменклатуры = ВидыНоменклатуры.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НоменклатурныеГруппы КАК НоменклатурныеГруппы
        ПО Номенклатура.НоменклатурнаяГруппа = НоменклатурныеГруппы.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХарактеристикиНоменклатуры КАК ХарактеристикиНоменклатуры
        ПО (ХарактеристикиНоменклатуры.Владелец = Номенклатура.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваНом
        ПО (СвойстваНом.Объект = Номенклатура.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваГр
        ПО (СвойстваГр.Объект = Номенклатура.НоменклатурнаяГруппа.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваВид
        ПО (СвойстваВид.Объект = ВидыНоменклатуры.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваРод
        ПО (СвойстваВид.Объект = Номенклатура.Родитель.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХранилищеДополнительнойИнформации КАК ХранилищеДополнительнойИнформации
        ПО Номенклатура.ОсновноеИзображение = ХранилищеДополнительнойИнформации.Ссылка
{ХАРАКТЕРИСТИКИ
    ТИП(Справочник.Номенклатура)
    ВИДЫХАРАКТЕРИСТИК ПланВидовХарактеристик.СвойстваОбъектов
    ПОЛЕКЛЮЧА Ссылка
    ПОЛЕИМЕНИ Наименование
    ПОЛЕТИПАЗНАЧЕНИЯ ТипЗначения
    ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.ЗначенияСвойствОбъектов
    ПОЛЕОБЪЕКТА Объект
    ПОЛЕВИДА Свойство
    ПОЛЕЗНАЧЕНИЯ Значение }


вроде есть -всё прописано, а отбор по характеристикам не работает. Помогите, пожалуйста в чем ошибка?

  Форум: Система компоновки данных · Просмотр сообщения: #178191 · Ответов: 0 · Просмотров: 313
 

>  Как в выгружаемой на форму ТЗ дать пользователю возможность редактировать указанные колонки но закрыть редактирования некоторых строк из них
Svetas_2024
Отправлено: 13.01.24, 9:42


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Svetas_2024 @ 07.01.24, 20:54 * ,
хоть-кто может подсказать? помогите пожалуйста
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178189 · Ответов: 2 · Просмотров: 316
 

>  как условия отбора запроса (на СКД) перенести в связь наборов данных с возможностью настройки пользователем отборов
Svetas_2024
Отправлено: 13.01.24, 7:42


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Добрый день, уважаемые форумчани. Прошу помощи
1С:Предприятие 8.3 (8.3.15.1869), "Управление производственным предприятием для Украины", редакция 1.3 (1.3.66.1) , формы обычные (не управляемые)
задача "пользователь хочет иметь подключаемый/отключаемый фильтр номенклатуры по её характеристикам"




вопрос

есть запрос
ВЫБРАТЬ
    Номенклатура.Код КАК Код,
    ВЫРАЗИТЬ(Номенклатура.Наименование КАК СТРОКА(200)) КАК Наименование,
    Номенклатура.Артикул КАК Артикул,
    Номенклатура.ЕдиницаДляОтчетов.Вес КАК Вес,
    Номенклатура.ЕдиницаДляОтчетов.Объем КАК ЕдиницаДляОтчетовОбъем,
    Номенклатура.ВидНоменклатуры КАК ВидНоменклатуры,
    НоменклатурныеГруппы.Ссылка КАК НоменклатурныеГруппы,
    Номенклатура.ОсновноеИзображение КАК ОсновноеИзображение,
    ВЫРАЗИТЬ(Номенклатура.ОсновноеИзображение.ИмяФайла КАК СТРОКА(20)) КАК ИмяФайла,
    Номенклатура.ОсновноеИзображение.Объект КАК ОсновноеИзображениеХранилище,
    Номенклатура.ОтветственныйМенеджерЗаПокупки КАК ОтветственныйМенеджерЗаПокупки,
    ХарактеристикиНоменклатуры.Представление КАК Представление,
    ХарактеристикиНоменклатуры.Ссылка КАК Ссылка,
    СвойстваНом.Свойство.Представление КАК СвойствоПредстНом,
    СвойстваНом.Значение КАК ЗначениеНом,
    СвойстваНом.Свойство.Код КАК СвойствоКодНом,
    СвойстваНом.Свойство.Предопределенный КАК СвойствоПредопНом,
    ХарактеристикиНоменклатуры.Длина КАК Длина,
    НоменклатурныеГруппы.Представление КАК НоменклатурнаяГруппа,
    Номенклатура.Родитель КАК Родитель,
    СвойстваРод.Свойство КАК Свойство,
    СвойстваРод.Значение КАК Значение,
    СвойстваГр.Свойство КАК Свойство1,
    СвойстваГр.Значение КАК Значение1,
    СвойстваВид.Свойство КАК Свойство2,
    СвойстваВид.Значение КАК Значение2,
    ХранилищеДополнительнойИнформации.Ссылка КАК СсылкаКартинка,
    ХранилищеДополнительнойИнформации.Хранилище КАК Хранилище
ИЗ
    Справочник.Номенклатура КАК Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыНоменклатуры КАК ВидыНоменклатуры
        ПО Номенклатура.ВидНоменклатуры = ВидыНоменклатуры.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НоменклатурныеГруппы КАК НоменклатурныеГруппы
        ПО Номенклатура.НоменклатурнаяГруппа = НоменклатурныеГруппы.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХарактеристикиНоменклатуры КАК ХарактеристикиНоменклатуры
        ПО (ХарактеристикиНоменклатуры.Владелец = Номенклатура.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваНом
        ПО (СвойстваНом.Объект = Номенклатура.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваГр
        ПО (СвойстваГр.Объект = Номенклатура.НоменклатурнаяГруппа.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваВид
        ПО (СвойстваВид.Объект = ВидыНоменклатуры.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК СвойстваРод
        ПО (СвойстваВид.Объект = Номенклатура.Родитель.Ссылка)
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХранилищеДополнительнойИнформации КАК ХранилищеДополнительнойИнформации
        ПО Номенклатура.ОсновноеИзображение = ХранилищеДополнительнойИнформации.Ссылка
ГДЕ
    ВидыНоменклатуры.Ссылка = &ВидНоменклатуры
    И НоменклатурныеГруппы.Ссылка = &НоменклатГруппа
    И
    Номенклатура.Ссылка В ИЕРАРХИИ
      (ВЫБРАТЬ
                Номенклатура.Ссылка КАК Ссылка
               ИЗ
                РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
                    ПО
                        ЗначенияСвойствОбъектов.Объект = Номенклатура.Ссылка
                   ГДЕ
                        ЗначенияСвойствОбъектов.Свойство.Наименование = &Свойство
                        И ЗначенияСвойствОбъектов.Значение.Наименование = &Значение)


который иммет 3 условия
ВидыНоменклатуры.Ссылка = &ВидНоменклатуры
    И НоменклатурныеГруппы.Ссылка = &НоменклатГруппа
    И
    Номенклатура.Ссылка В ИЕРАРХИИ
и вот эти 3 условия нужно перенести в отборы подключаемые/отключаемые пользователем
т.е.
чтобы пользователь сам мог выбирать наличие отбора (т.е. в одних случаях отбор есть, в других случаях отбора нет).

в случае с
ВидыНоменклатуры.Ссылка = &ВидНоменклатуры
    И НоменклатурныеГруппы.Ссылка = &НоменклатГруппа
всё просто

а вот с
Номенклатура.Ссылка В ИЕРАРХИИ
что делать?
как создать пользовательский отбор - чтобы пользователь сам мог выбирать фильтровать ли номенклатуру по значениям свойств характеристик или нет....

попробовала создала Источник данных 2 - засунула туда запрос
ВЫБРАТЬ
                Номенклатура.Ссылка КАК Ссылка
               ИЗ
                РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
                    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
                    ПО
                        ЗначенияСвойствОбъектов.Объект = Номенклатура.Ссылка


но как правильно задать их связь (Источник данных 1 и источник данных 2) и как добавить в пользовательские отборы &Свойство и &Значение?-

  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178188 · Ответов: 3 · Просмотров: 703
 

>  Задание параметров печати макета (буклета/каталога)
Svetas_2024
Отправлено: 09.01.24, 13:05


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Vofka @ Сегодня, 9:13 * ,
извините не подумала
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178149 · Ответов: 2 · Просмотров: 366
 

>  Как сделать ширину колонок табличного документа одинаковой (в коде задаётся,но не отображается))
Svetas_2024
Отправлено: 09.01.24, 13:02


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Vofka @ Сегодня, 9:11 * ,
нет в том и дело, что на картинке отчета на разная параметр 1 и параметр 2 - ширина у наименования разная -но почему?
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178148 · Ответов: 2 · Просмотров: 389
 

>  Как в 1С можно подгрузить задачи из Битрикс 24
Svetas_2024
Отправлено: 09.01.24, 13:00


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Vofka @ Сегодня, 9:18 * ,
по документации - нужно слить с их обработкой, а слитие даёт ошибки я в другой теме писала
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178147 · Ответов: 4 · Просмотров: 639
 

>  Макет шаблона для выбора пользователем его наполнения
Svetas_2024
Отправлено: 09.01.24, 12:38


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


sava1 @ Сегодня, 10:13 * ,
несколько строк зависает и так на каждом листе можете подсказать, пожалуйста , где ошибка





НомерСтроки=5;
ШапкаСтрока= 3;
СчетчикШапки=0;


Для каждого строка из аа Цикл

    
i=0;
        Для i = 1 По строка[0].свойства.Количество() Цикл
            
            если  строка[0].свойства[i-1].выбор=Истина  Тогда  
                
            ОбластьПараметр1.Параметры.ИмяДопПоля=строка[0].свойства[i-1].наименование;
                          
                ТабДок.Область(5+(i-1),3).ШиринаКолонки = ШиринаРисунка;
                ТабДок.Область(5+(i-1),3).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);   //имя,размер,полужирный,наклонный,подчеркивание,зачеркивание
                
                ТабДок.Область(5+(i-1),2).ШиринаКолонки  =ШиринаКол;
                 ТабДок.Область(5+(i-1),2).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),1).ШиринаКолонки = ШиринаКол;
                            ТабДок.Область(5+(i-1),1).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),1).ВысотаСтроки=ВысотаСтр;
                ТабДок.Область(5+(i-1),2).ВысотаСтроки=ВысотаСтр;

                            ОбластьПараметр1.Параметры.ЗначениеДопПоля=строка[0].свойства[i-1].значение;
                                           
                ОбластьПараметр2.Параметры.ИмяДопПоля=строка[1].свойства[i-1].наименование;
                ОбластьПараметр2.Параметры.ЗначениеДопПоля=строка[1].свойства[i-1].значение;
                
                ТабДок.Область(5+(i-1),4).ВысотаСтроки=ВысотаСтр;
                ТабДок.Область(5+(i-1),5).ВысотаСтроки=ВысотаСтр;
                ТабДок.Область(5+(i-1),4).ШиринаКолонки =ШиринаКол;
                ТабДок.Область(5+(i-1),4).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),5).ШиринаКолонки =ШиринаКол;
                ТабДок.Область(5+(i-1),5).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),6).ШиринаКолонки = ШиринаРисунка;
                            ТабДок.Область(5+(i-1),6).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);
                ТабДок.Вывести(ОбластьПараметр1);
                            ТабДок.Присоединить(ОбластьКартинка11);

                        ТабДок.Присоединить(ОбластьПараметр2);
                            ТабДок.Присоединить(ОбластьКартинка22);
        
            конецесли;        
                
        КонецЦикла;
                  НомерСтроки_н=НомерСтроки;
              НомерСтроки=НомерСтроки+строка[0].свойства.Количество();
              НомерСтроки_к=НомерСтроки;
                                  
              ОбластьКартинка01 = ТабДок.Область(НомерСтроки_н+СчетчикШапки+1,3,НомерСтроки_к+СчетчикШапки,3);
              ОбластьКартинка01.Объединить();
              
              Линия = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
              ОбластьКарточки1 =ТабДок.Область(НомерСтроки_н+СчетчикШапки+1,1,НомерСтроки_к+СчетчикШапки,3);
                      ОбластьКарточки1.Обвести(Линия, Линия, Линия, Линия);
              
              
              Рисунок1 =  ТабДок.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
              Рисунок1.Картинка = Изображение1;
              Рисунок1.Расположить(ОбластьКартинка01);
                          если Рисунок1.Высота>ВысотаРисунка тогда Рисунок1.Высота=ВысотаРисунка; конецесли;
              если Рисунок1.Ширина>ШиринаРисунка тогда Рисунок1.Ширина=ШиринаРисунка; конецесли;

              ОбластьКартинка02 = ТабДок.Область(НомерСтроки_н+СчетчикШапки+1,6,НомерСтроки_к+СчетчикШапки,6);
              ОбластьКартинка02.Объединить();
                         
              Линия = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
              ОбластьКарточки2 =ТабДок.Область(НомерСтроки_н+1+СчетчикШапки,4,НомерСтроки_к+СчетчикШапки,6);
                         ОбластьКарточки2.Обвести(Линия, Линия, Линия, Линия);
              
              Рисунок2 =  ТабДок.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
              Рисунок2.Картинка = Изображение2;
              Рисунок2.Расположить(ОбластьКартинка02);
              если Рисунок2.Высота>ВысотаРисунка тогда Рисунок2.Высота=ВысотаРисунка; конецесли;
              если Рисунок2.Ширина>ШиринаРисунка тогда Рисунок2.Ширина=ШиринаРисунка; конецесли;

              
              МассивОбластей.Очистить();        
              МассивОбластей.Добавить(Макет.ПолучитьОбласть(НомерСтроки_н+1+СчетчикШапки,1,НомерСтроки_к+СчетчикШапки,6));
            
               Если Не ТабДок.ПроверитьВывод(МассивОбластей) Тогда    
                  ТабДок.ВывестиГоризонтальныйРазделительСтраниц();   // начнем новую страницу
                  ТабДок.Вывести(ОбластьШапка1);          //область шапка
                  ТабДок.Присоединить(ОбластьШапка2);     //область шапка
                  ТабДок.Присоединить(ОбластьШапка3);     //область шапка
                  ТабДок.Присоединить(ОбластьШапка4);     //область шапка
                  
                  МассивОбластей.Очистить();
                  СчетчикШапки=СчетчикШапки+ ШапкаСтрока;
               КонецЕсли;    
          
             конеццикла;    
ТабДок.НижнийКолонтитул.НачальнаяСтраница = 1;
ТабДок.НижнийКолонтитул.ВертикальноеПоложение = ВертикальноеПоложение.Низ;
ТабДок.НижнийКолонтитул.ТекстВЦентре= строка(ИмяПользователя())+" [&Дата] - [&Время]";
ТабДок.НижнийКолонтитул.ТекстСправа="Страница [&НомерСтраницы] из [&СтраницВсего]";
ТабДок.РазмерКолонтитулаСнизу=РазмКолонтитул;
ТабДок.ПолеСлева=ПолеСлев;
ТабДок.ПолеСверху=ПолеСверх;
ТабДок.ПолеСнизу=ПолеСниз;
ТабДок.ПолеСправа=ПолеСправ;

ТабДок.Автомасштаб=истина;
ТабДок.НижнийКолонтитул.Выводить = Истина;      

ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Истина;
ТабДок.ТолькоПросмотр = Истина;
ТабДок.ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт;
ТабДок.ЭкземпляровНаСтранице=ЭкземНаСтранице; //на листе будет размещено 2 страницы
ТабДок.РазмерСтраницы=  "A4";
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();


получается несколько строк зависает на отдельной странице и так на каждой странице



первый вариант зависают строки после 1 листа, на всех остальных 2 вариант. Подскажите, пожалуйста, как такое устранить ...
Никак не могу найти почему
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178146 · Ответов: 18 · Просмотров: 3717
 

>  Макет шаблона для выбора пользователем его наполнения
Svetas_2024
Отправлено: 09.01.24, 9:41


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


sava1 @ Сегодня, 8:55 * ,
но потом во время объединения рисунок залазит на шапку увеличивая свои размеры, а строки всё равно разбиваются...
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178143 · Ответов: 18 · Просмотров: 3717
 

>  Макет шаблона для выбора пользователем его наполнения
Svetas_2024
Отправлено: 08.01.24, 21:51


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Цитата(sava1 @ 03.01.24, 18:58) *
Для сч =1 по количествоСвойств
    // виводим 1ю секцию
    // присоединяем вторую
    // заполняем параметры во 2й секции
   ......
конеццикла

// получаем координаты 1й секции верх, низ
// получаем область, где будет лежать рисунок (1я секция, верх, низ)
// полученная область.Объединить - получаем неприрывную область
// вычисляем высоту этой области в пикселях
// высоту рисунка делаем чуть меньше высоты области
// задаем параметры масштабирования рисунка



Больше спасибо, скажите, только , пожалуйста, куда тут пристроить тут
Если Не ТабДок.ПроверитьВывод(МассивОбластей) Тогда
а то рисунок на стыке страниц разрывается на части... Заранее спасибо.
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178137 · Ответов: 18 · Просмотров: 3717
 

>  как посчитать страницы в макете при выводе области в цикле
Svetas_2024
Отправлено: 08.01.24, 9:28


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


AnryMc @ Сегодня, 9:23 * ,
а как и как узнать номер?
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178130 · Ответов: 4 · Просмотров: 1242
 

>  Как в выгружаемой на форму ТЗ дать пользователю возможность редактировать указанные колонки но закрыть редактирования некоторых строк из них
Svetas_2024
Отправлено: 07.01.24, 20:54


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Svetas_2024 @ Вчера, 8:22 * ,
изменила код
 кол =  Форма1.ЭлементыФормы.ТЗ.Колонки.Найти("наименование");
     кол.УстановитьЭлементУправления(Тип("ПолеВвода"));
     кол.ЭлементУправления.КнопкаОткрытия =Истина;
     кол.ЭлементУправления.РедактированиеТекста  =Истина;

     кол.ТолькоПросмотр = Ложь;
     кол.Доступность=Истина;

а редактировать всё равно не даёт данные в колонке ТЗ
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178127 · Ответов: 2 · Просмотров: 316
 

>  как посчитать страницы в макете при выводе области в цикле
Svetas_2024
Отправлено: 07.01.24, 8:32


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Добрый день, уважаемые форумчани. Прошу помощи
1С:Предприятие 8.3 (8.3.15.1869), "Управление производственным предприятием для Украины", редакция 1.3 (1.3.66.1) , формы обычные (не управляемые)

как посчитать страницы в макете при выводе области в цикле

и как вывести их в нижнем или в верхнем колонтитуле?

Макет = ЭтотОбъект.ПолучитьМакет("МакетКаталогПоЭлементам");

ОбластьШапка1= Макет.ПолучитьОбласть("ШапкаСтока|Шапка1");
ОбластьШапка2= Макет.ПолучитьОбласть("ШапкаСтока|Параметры1");
ОбластьШапка3= Макет.ПолучитьОбласть("ШапкаСтока|Шапка2");
ОбластьШапка4= Макет.ПолучитьОбласть("ШапкаСтока|Параметры2");

ОбластьКартинка11= Макет.ПолучитьОбласть("параметр|Шапка1");
ОбластьПараметр1= Макет.ПолучитьОбласть("параметр|Параметры1");
ОбластьКартинка22= Макет.ПолучитьОбласть("параметр|Шапка2");
ОбластьПараметр2= Макет.ПолучитьОбласть("параметр|Параметры2");

ОбластьШапка4.Параметры.Дата = ТекущаяДата();
ТабДок.Вывести(ОбластьШапка1);
ТабДок.Присоединить(ОбластьШапка2);
ТабДок.Присоединить(ОбластьШапка3);
ТабДок.Присоединить(ОбластьШапка4);
МассивОбластей = Новый Массив;

НомерСтроки=5;

Для каждого строка из аа Цикл
    
...........
    
        Для i = 1 По строка[0].свойства.Количество() Цикл
            
            если  строка[0].свойства[i-1].выбор=Истина  Тогда  
                
              ОбластьПараметр1.Параметры.ИмяДопПоля=строка[0].свойства[i-1].наименование;
                          
                ТабДок.Область(5+(i-1),3).ШиринаКолонки = ШиринаРисунка;
                ТабДок.Область(5+(i-1),3).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);   //имя,размер,полужирный,наклонный,подчеркивание,зачеркивание
                
                ТабДок.Область(5+(i-1),2).ШиринаКолонки  =ШиринаКол;
                ТабДок.Область(5+(i-1),2).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),1).ШиринаКолонки = ШиринаКол;
                            ТабДок.Область(5+(i-1),1).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),1).ВысотаСтроки=ВысотаСтр;
                ТабДок.Область(5+(i-1),2).ВысотаСтроки=ВысотаСтр;

                            ОбластьПараметр1.Параметры.ЗначениеДопПоля=строка[0].свойства[i-1].значение;
              
                ТабДок.Вывести(ОбластьПараметр1);
                            ТабДок.Присоединить(ОбластьКартинка11);
              
                ОбластьПараметр2.Параметры.ИмяДопПоля=строка[1].свойства[i-1].наименование;
                ОбластьПараметр2.Параметры.ЗначениеДопПоля=строка[1].свойства[i-1].значение;
                
                ТабДок.Область(5+(i-1),4).ВысотаСтроки=ВысотаСтр;
                ТабДок.Область(5+(i-1),5).ВысотаСтроки=ВысотаСтр;
                ТабДок.Область(5+(i-1),4).ШиринаКолонки =ШиринаКол;
                ТабДок.Область(5+(i-1),4).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),5).ШиринаКолонки =ШиринаКол;
                ТабДок.Область(5+(i-1),5).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),6).ШиринаКолонки = ШиринаРисунка;
                            ТабДок.Область(5+(i-1),6).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Присоединить(ОбластьПараметр2);
                            ТабДок.Присоединить(ОбластьКартинка22);
            
                
        КонецЦикла;
              НомерСтроки_н=НомерСтроки;
              НомерСтроки=НомерСтроки+строка[0].свойства.Количество();
              НомерСтроки_к=НомерСтроки;
                                  
              ОбластьКартинка01 = ТабДок.Область(НомерСтроки_н+1,3,НомерСтроки_к,3);
              ОбластьКартинка01.Объединить();
              
              Линия = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
              ОбластьКарточки1 =ТабДок.Область(НомерСтроки_н+1,1,НомерСтроки_к,3);
                      ОбластьКарточки1.Обвести(Линия, Линия, Линия, Линия);
              
              
              Рисунок1 =  ТабДок.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
              Рисунок1.Картинка = Изображение1;
              Рисунок1.Расположить(ОбластьКартинка01);
                        
              ОбластьКартинка02 = ТабДок.Область(НомерСтроки_н+1,6,НомерСтроки_к,6);
              ОбластьКартинка02.Объединить();
              
                            
              Линия = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
              ОбластьКарточки2 =ТабДок.Область(НомерСтроки_н+1,4,НомерСтроки_к,6);
                          ОбластьКарточки2.Обвести(Линия, Линия, Линия, Линия);
              
              Рисунок2 =  ТабДок.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
              Рисунок2.Картинка = Изображение2;
              Рисунок2.Расположить(ОбластьКартинка02);
        
  
            ОблКаталог=Макет.ПолучитьОбласть(НомерСтроки_н+1,1,НомерСтроки_к,6);
              ТабДокумент.Вывести(ОблКаталог);
          

          конеццикла;    
          
        ОбластьЗаголовокСтрока=Макет.ПолучитьОбласть(2,1,4,6);
        
        ТабШапка.Вывести(ОбластьЗаголовокСтрока);
        
        МассивОбластей.Очистить();        
        МассивОбластей.Добавить(ТабДокумент);
        
        Если Не ТабДок.ПроверитьВывод(МассивОбластей) Тогда    
            ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
            МассивОбластей.Очистить();
        КонецЕсли;
        

ТабДок.Защита = Истина;
ТабДок.ТолькоПросмотр = Истина;
ТабДок.ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт;
ТабДок.РазмерСтраницы=  "A4";
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Вывести(ТабДок);
ТабДок.Показать();
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178125 · Ответов: 4 · Просмотров: 1242
 

>  Объединить ячеки в табличном документе
Svetas_2024
Отправлено: 06.01.24, 18:39


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Svetas_2024 @ Вчера, 10:04 * ,
спасибо вопрос уже закрыт

  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178123 · Ответов: 6 · Просмотров: 6441
 

>  Как при выходе за границы листа при печати - уменьшать ширину колонок и картинки- пока не поместится на 1 лист
Svetas_2024
Отправлено: 06.01.24, 18:29


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Добрый день, уважаемые форумчани. Прошу помощи
1С:Предприятие 8.3 (8.3.15.1869), "Управление производственным предприятием для Украины", редакция 1.3 (1.3.66.1) , формы обычные (не управляемые)

печатаю в макете




как устранить при печати не правильное разбитие листа
т.е.

и


Необходимо автоматом уменьшать ширину колонок и картинки (картинки пропорционально) пока не поместится всё на 1 печатный лист по ширине
и по длине без разбития пополам картинки с переносом шапки отчета на следующий лист при печати в нём
автоматом - т.е. при нажатии пользователем на отдельную кнопку подбора величины

Т.е. вопрос - как отловить -что не помещается на 1 лист (неделимая область карточки обведенная рамкой) и автоматом подобрать границы ширины (границы ширины колонок и границы ширины рисунка)
и по длине сделать перенос шапки отчета на следуюший лист?



неделимая область
 ОблКаталог=Макет.ПолучитьОбласть(НомерСтроки_н+1,1,НомерСтроки_к,6);
              ТабДокумент.Вывести(ОблКаталог);



область шапки для переноса на следующий лист
ОбластьЗаголовокСтрока=Макет.ПолучитьОбласть(2,1,4,6);


в чем ошибка
ОбластьЗаголовокСтрока=Макет.ПолучитьОбласть(2,1,4,6);
        
        ТабШапка.Вывести(ОбластьЗаголовокСтрока);
        
        МассивОбластей.Очистить();        
        МассивОбластей.Добавить(ТабДокумент);
        
        Если Не ТабДок.ПроверитьВывод(МассивОбластей) Тогда    
            ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
            МассивОбластей.Очистить();
        КонецЕсли;

весь код:

    Для i = 1 По строка[0].свойства.Количество() Цикл
            
            если  строка[0].свойства[i-1].выбор=Истина  Тогда  
                
                ОбластьПараметр1.Параметры.ИмяДопПоля=строка[0].свойства[i-1].наименование;
                          
                ТабДок.Область(5+(i-1),3).ШиринаКолонки = ШиринаРисунка;
                ТабДок.Область(5+(i-1),3).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);   //имя,размер,полужирный,наклонный,подчеркивание,зачеркивание
                
                 ТабДок.Область(5+(i-1),2).ШиринаКолонки  =ШиринаКол;
                 ТабДок.Область(5+(i-1),2).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),1).ШиринаКолонки = ШиринаКол;
                            ТабДок.Область(5+(i-1),1).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),1).ВысотаСтроки=ВысотаСтр;
                ТабДок.Область(5+(i-1),2).ВысотаСтроки=ВысотаСтр;

                            ОбластьПараметр1.Параметры.ЗначениеДопПоля=строка[0].свойства[i-1].значение;
              
                ТабДок.Вывести(ОбластьПараметр1);
                             ТабДок.Присоединить(ОбластьКартинка11);
              
                 ОбластьПараметр2.Параметры.ИмяДопПоля=строка[1].свойства[i-1].наименование;
                 ОбластьПараметр2.Параметры.ЗначениеДопПоля=строка[1].свойства[i-1].значение;
                
                ТабДок.Область(5+(i-1),4).ВысотаСтроки=ВысотаСтр;
                ТабДок.Область(5+(i-1),5).ВысотаСтроки=ВысотаСтр;
                ТабДок.Область(5+(i-1),4).ШиринаКолонки =ШиринаКол;
                ТабДок.Область(5+(i-1),4).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),5).ШиринаКолонки =ШиринаКол;
                ТабДок.Область(5+(i-1),5).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Область(5+(i-1),6).ШиринаКолонки = ШиринаРисунка;
                            ТабДок.Область(5+(i-1),6).Шрифт=Новый Шрифт("Arial",РазШрифта,Ложь,Ложь,Ложь,Ложь);

                ТабДок.Присоединить(ОбластьПараметр2);
                            ТабДок.Присоединить(ОбластьКартинка22);
        
            конецесли;        
                
        КонецЦикла;
                  НомерСтроки_н=НомерСтроки;
              НомерСтроки=НомерСтроки+строка[0].свойства.Количество();
              НомерСтроки_к=НомерСтроки;
                                  
              ОбластьКартинка01 = ТабДок.Область(НомерСтроки_н+1,3,НомерСтроки_к,3);
              ОбластьКартинка01.Объединить();
              
              Линия = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
              ОбластьКарточки1 =ТабДок.Область(НомерСтроки_н+1,1,НомерСтроки_к,3);
                      ОбластьКарточки1.Обвести(Линия, Линия, Линия, Линия);
              
              
              Рисунок1 =  ТабДок.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
              Рисунок1.Картинка = Изображение1;
              Рисунок1.Расположить(ОбластьКартинка01);
                          
                          если Рисунок1.Высота>ВысотаРисунка тогда Рисунок1.Высота=ВысотаРисунка; конецесли;
              если Рисунок1.Ширина>ШиринаРисунка тогда Рисунок1.Ширина=ШиринаРисунка; конецесли;

              ОбластьКартинка02 = ТабДок.Область(НомерСтроки_н+1,6,НомерСтроки_к,6);
              ОбластьКартинка02.Объединить();
              
                             
              Линия = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
              ОбластьКарточки2 =ТабДок.Область(НомерСтроки_н+1,4,НомерСтроки_к,6);
                          ОбластьКарточки2.Обвести(Линия, Линия, Линия, Линия);
              
              Рисунок2 =  ТабДок.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
              Рисунок2.Картинка = Изображение2;
              Рисунок2.Расположить(ОбластьКартинка02);
              если Рисунок2.Высота>ВысотаРисунка тогда Рисунок2.Высота=ВысотаРисунка; конецесли;
              если Рисунок2.Ширина>ШиринаРисунка тогда Рисунок2.Ширина=ШиринаРисунка; конецесли;

              
              ОблКаталог=Макет.ПолучитьОбласть(НомерСтроки_н+1,1,НомерСтроки_к,6);
              ТабДокумент.Вывести(ОблКаталог);
          

          конеццикла;    
          
        ОбластьЗаголовокСтрока=Макет.ПолучитьОбласть(2,1,4,6);
        
        ТабШапка.Вывести(ОбластьЗаголовокСтрока);
        
        МассивОбластей.Очистить();        
        МассивОбластей.Добавить(ТабДокумент);
        
        Если Не ТабДок.ПроверитьВывод(МассивОбластей) Тогда    
            ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
            МассивОбластей.Очистить();
        КонецЕсли;    
    
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Истина;
ТабДок.ТолькоПросмотр = Истина;
ТабДок.ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт;
ТабДок.РазмерСтраницы=  "A4";
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Вывести(ТабДок);
ТабДок.Показать();


помогите пожалуйста.
Заранее спасибо
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178121 · Ответов: 0 · Просмотров: 176
 

>  Как при печати Макета недопустить разбитие попалам неделимой области (выводимой в цикле, с картинкой)
Svetas_2024
Отправлено: 06.01.24, 16:58


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Svetas_2024 @ Сегодня, 8:53 * ,
отредактировала код
      ОблКаталог=Макет.ПолучитьОбласть(НомерСтроки_н+1,1,НомерСтроки_к,6);
              ТабДокумент.Вывести(ОблКаталог);
          

          конеццикла;    
          
        ОбластьЗаголовокСтрока=Макет.ПолучитьОбласть(2,1,4,6);
        
        ТабШапка.Вывести(ОбластьЗаголовокСтрока);
        
        МассивОбластей.Очистить();        
        МассивОбластей.Добавить(ТабДокумент);
        
        Если Не ТабДок.ПроверитьВывод(МассивОбластей) Тогда    
            ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
            МассивОбластей.Очистить();
        КонецЕсли;


ошибка ушла, но неправильное разбитие по листам осталось

и


как такое устранить?
чтобы картинка не отображалась отдельно от надписи на другом листе (а переносилась вся карточка) и чтобы картинка не делилась пополам, а сначала переносилась шапка, а потом вся карточка.

Как такое исправить?
Помогите, пожалуйста.

Заранее спасибо

или что бы автоматом менялись размеры -для умещения всё на 1 листе - ширина колонок и картинки? пока не влезет на лист. Как такое можно сделать?
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178120 · Ответов: 1 · Просмотров: 276
 

>  Как в 1С можно подгрузить задачи из Битрикс 24
Svetas_2024
Отправлено: 06.01.24, 9:39


Общительный
**

Группа: Пользователи
Сообщений: 48
Регистрация: 24.12.23
Пользователь №: 78694


Добрый день, уважаемые форумчани. Прошу помощи
1С:Предприятие 8.3 (8.3.15.1869), "Управление производственным предприятием для Украины", редакция 1.3 (1.3.66.1) , формы обычные (не управляемые)

Как в 1С можно подгрузить задачи из Битрикс 24 - какими методами?
Должен быть список выпадающих задач, и это должны быть гипперсылки, чтобы мы могли сразу проваливаться в задачу.

Или из базы SQL Битрикс 24 в 1С

Заранее спасибо за ответ.
  Форум: Программирование в 1С Предприятие 8.3 · Просмотр сообщения: #178119 · Ответов: 4 · Просмотров: 639
 

2 страниц V   1 2 >

Новые сообщения  Открытая тема (есть новые ответы)
Опрос  Опрос (есть новые голоса)
Нет новых сообщений  Открытая тема (нет новых ответов)
Нет новых голосов  Опрос (нет новых голосов)
Популярная тема  Горячая тема (есть новые ответы)
Закрыта  Закрытая тема
Нет новых  Горячая тема (нет новых ответов) Перемещена  Тема перемещена
 

RSS Текстовая версия Сейчас: 09.05.24, 22:52
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!