Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Сравнение значения реквизита Табличной части
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
jojojoba2
Добрый день!

Конфигурация УПП для Украины. Есть документ ПеремещениеТоваров. Я для него исправляю типичную форму с вывод суммы для товара. Данные взял с регистра Бухгалтерии Хозрасчетный( ХозрасчетныйОбороты). Форма работает ,но при выборе 023 счета пишет "индекс находится за границами массива".Я разобрался, В запросе при выборе ХозрасчетныйОбороты.КорСубконто1 попадает значение NULL :
|ВЫБРАТЬ
|    ХозрасчетныйОбороты.КорСубконто1,
|    ХозрасчетныйОбороты.СуммаОборотДт
|ИЗ
|    РегистрБухгалтерии.Хозрасчетный.Обороты(, , Регистратор, , , , , ) КАК ХозрасчетныйОбороты
|ГДЕ
|    ХозрасчетныйОбороты.Регистратор = &Ссылка



Для Счета 023 нужно использовать запрос :

|ВЫБРАТЬ
|    ХозрасчетныйОбороты.КорСубконто2,
|    ХозрасчетныйОбороты.СуммаОборотДт
|ИЗ
|    РегистрБухгалтерии.Хозрасчетный.Обороты(, , Регистратор, , , , , ) КАК ХозрасчетныйОбороты
|ГДЕ
|    ХозрасчетныйОбороты.Регистратор = &Ссылка


и форма по 023 работает норм.Но другие тогда не пашут.

Подскажите пожалуйста начинающему програмисту, как сделать правильно выбор между запросами. Я хочу сравнить Значение поля табличной части с 023 счетом:


@@ Если Документы.ПеремещениеТоваров.Товары.СчетУчетаБУ = "023" то запрос 2, иначе запрос 1.@@ Товары-это ТАБЛИЧНАЯ ЧАСТЬ, СчетУчетаБУ- это реквизит табличной табличной части.

Как вытащить значение из СчетУчетаБУ с сылкой на товар в документе? Можете сбросить подобный пример.

Спасибо!


 ! 

необходимо зарегистрироваться для просмотра ссылки: 9
 
Vofka
Если у вас на всех счетах, которые вы обрабатываете, есть одно и то же субконто, но оно находится в разном порядке, можно передать специальный параметр в РегистрБухгалтерии.Хозрасчетный.Обороты(, , Регистратор, , &ВидыСубконто, , , )

ВидыСубконто = Новый Массив;
ВидыСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.ВАШЕ_СУБКОНТО);
Запрос.УстановитьПараметр("ВидыСубконто", ВидыСубконто);


После этого можно будет обращаться к нему ХозрасчетныйОбороты.КорСубконто1 независимо от того хранится ли оно физически в КорСубконто1 или КорСубконто2
jojojoba2
Vofka @ Сегодня, 11:24 необходимо зарегистрироваться для просмотра ссылки ,
Спасибо, все заработало.

Но все же уже, чисто, интересно как сделать сравнение реквизита Табличной Части с другим значением с помощью менеджера :

@@ Если Документы.ПеремещениеТоваров.Товары.СчетУчетаБУ = "023" то запрос 2, иначе запрос 1.@@ Товары-это ТАБЛИЧНАЯ ЧАСТЬ, СчетУчетаБУ- это реквизит табличной табличной части.
Vofka
Если правильно понял, то использовать конструкцию ВЫБОР ... КОГДА ... КОНЕЦ (псевдокод):
ВЫБОР
   КОГДА ...Счет = "023" ТОГДА Субконто1
   ИНАЧЕ Субконто2
КОНЕЦ КАК МоеСубконто


для спасибо у нас специальная кнопка есть
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.