Помогите доработать обработку табличной части документов
15.03.2014
13:35
#1
"Добрый день.<br>Помогие новичку.<br>Есть код<br> <br>Процедура Выполнить()<br>Если ПустоеЗначение(Док1)=1 Тогда<br> Предупреждение("Документ не задан");<br> Возврат;<br>КонецЕсли;<br>Если Док1.Проведен()=1 Тогда<br> Предупреждение("Документ проведен. Данная операция возможна только на непроведенном документе.");<br> Возврат;<br>КонецЕсли;<br> Док2 = СоздатьОбъект("Документ."+Док1.Вид());<br> Док2.НайтиДокумент(Док1.ТекущийДокумент());<br>Док2.ВыбратьСтроки();<br>Пока Док2.ПолучитьСтроку()=1 цикл<br> Ц=Док2.ПолучитьАтрибут("Цена");<br> К=Док2.ПолучитьАтрибут("Количество");<br> С=Ц * К-(((Ц * К)*13)/100);<br> Док2.УстановитьАтрибут("Сумма",С)<br>КонецЦикла;<br> Док2.Записать();<br>КонецПроцедуры<br> <br>С помощью его могу обрабатывать документы только по одному изменяя сумму<br>Что нужно дописать что бы можно было группой обработать документы за период?<br>Пробывал сам ни че не получается, поэтому выложил только то что получилось"
17.03.2014
09:35
#2
Как минимум добавить в обработку форму, на нее поля для указания параметров отбора и кнопку для запуска отбора и процедуры обработки.<br>Выбирать за период документы, к каждому применять процедуру выше.
17.03.2014
11:55
#3
"Док1 = СоздатьОбъект("Документ." + НужныйВид);<br> <br>Док1.УстановитьФильтр(0, 1, 1, 1, 1, 1); // выбираем непроведенные документы<br> <br>Док1.ВыбратьДокументы(НачДата, КонДата);<br> <br>Пока Док1.ПолучитьДокумент() = 1 Цикл<br> <br>// вся ваша обработка посредством Док2<br> <br>КонецЦикла;"
17.03.2014
11:55
#4
Странно как то, сумму вы меняете, а цену нет. Выходит, что Цена*Количество не будет равно сумме, что не поддается логике, разве что имеется ввиду наличие скидки, но для ее отражения в разных конфигурациях придуманы разные способы.<br>P.S. Если есть возможность не тратить время на 7.7, не тратьте, направьте усилия на 8-ю версию платформы.
Читают тему
(гостей: 1)