gifts2017

Печатная форма счета-фактуры 1137 для ТиС 9.2

Опубликовал alex imfi (alex_imfi) в раздел Печать - Печатные формы документов

Исправление ошибки зацикливания при печати счета-фактуры 1137 в 1С Торговля и Склад 9.2

 

Столкнулся с проблемой зависания 1С 7.7 Торговля и Склад 9.2 при печати счета-фактуры 1137. При отладке печати обнаружил одну особенность в функции ПодготовитьМнЧосн : если товара не хватает в первой партии, то происходит зацикливание в блоке:



Пока (ОстКолво > 0) 

и (ТаблицаГТД.НайтиЗначение(ТаблицаОснования.Номенклатура, НомСтр, "Номенклатура") <> 0)
Цикл

ТаблицаГТД.ПолучитьСтрокуПоНомеру(НомСтр);

РаспредГТД.НоваяСтрока();
РаспредГТД.Колво = Мин(ОстКолво, ?(ТаблицаОснования.Коэффициент <> 0, ТаблицаГТД.Количество / ТаблицаОснования.Коэффициент, ТаблицаГТД.Количество));

РаспредГТД.Номер = ТаблицаГТД.ГТД;
РаспредГТД.Страна = ТаблицаГТД.СтранаПроисхождения;

ТаблицаГТД.Количество = ТаблицаГТД.Количество - РаспредГТД.Колво * ?(ТаблицаОснования.Коэффициент = 0, 1, ТаблицаОснования.Коэффициент);
Если ТаблицаГТД.Количество // если по ГТД все списали, то удаляем строку
ТаблицаГТД.УдалитьСтроку();
КонецЕсли;

ОстКолво = ОстКолво - РаспредГТД.Колво;
НомСтр = 0;
КонецЦикла;


Причем проблема была в том, что не выполнялось условие при значении 0 и происходило зацикливание:


Если ТаблицаГТД.Количество

// если по ГТД все списали, то удаляем строку
ТаблицаГТД.УдалитьСтроку();
КонецЕсли;


Проблема оказалась в том, что при создании колонок таблицы значений РаспредГТД колонка Колво создавалась без указания типа: 


РаспредГТД = СоздатьОбъект("ТаблицаЗначений");
РаспредГТД.НоваяКолонка("Колво");
РаспредГТД.НоваяКолонка("Страна");
РаспредГТД.НоваяКолонка("Номер");


А в стандартной процедуре печати счета-фактуры эта колонка создается с указанием типа Число: РаспредГТД.НоваяКолонка("Колво", "Число", 14, 3)

После исправления зацикливание было устранено.

Надеюсь кому-нибудь пригодится.


Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
SF1137.ERT
.ERT 47,00Kb
13.10.12
13
.ERT 47,00Kb 13 Скачать

См. также

Подписаться Добавить вознаграждение
В этой теме еще нет сообщений.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа