|
v7: Формирование документов по таблице значений | ☑ | ||
---|---|---|---|---|
0
Босечка
26.03.18
✎
17:30
|
Дана таблица значений. Надо сформировать по ней документы в каждом из документов должно быть по 40 строк. Как это лучше сделать?
|
|||
1
Босечка
26.03.18
✎
17:31
|
Это на 1с77. Обработка нужна для перехода на 1с8.
|
|||
2
Базис
naïve
26.03.18
✎
17:33
|
Что уже сделала, какие конкретные вопросы остались?
|
|||
3
Босечка
26.03.18
✎
17:43
|
как разбить таблицу на документы, в каждом должно быть 40 строк
|
|||
4
Herby
26.03.18
✎
17:49
|
все зависит от структуры таблицы значений.
|
|||
5
vova1122
26.03.18
✎
17:55
|
если разбивать по 40 строчек, то просто считать кличество строк. Если кол =40 тогда Док.Записать(). Потом Док.Новый(). и снова считать количество строк до 40. После обхода всей таблицы значений Док.Записать().
|
|||
6
Базис
naïve
26.03.18
✎
18:00
|
Сделай аккуратную запись в ТЧ одного документа. Потом расскажу, где добавить начала и концы документов.
Но ты точно уверена, что в восьмёрке тебе нужно сделать много маленьких документов? |
|||
7
Босечка
26.03.18
✎
18:09
|
точно
|
|||
8
Босечка
26.03.18
✎
18:09
|
Док1.Новый();
Док1.УстановитьНовыйНомер(Константа.ПрефиксБазы); Док1.ДатаП = ТекущаяДата(); Док1.Текст = "Ввод на основании документа Сводная Ревизионная Ведомость№ "+ВыбРевизия.НомерДок; Док1.Лицензия= Лиц; Док1.ДатаДок=ТекущаяДата(); Док1.Клиент=Кл1; Док1.АдресПоставки=АдрПост; Док1.УТАП=1; Док1.Склад=Скл; Док1.Агент=Аг; Для к=1 по 200 Цикл Т.ПолучитьСтрокуПоНомеру(к); Если (Т.КоличествоПрограмма<>0) и (Т.КоличествоФакт<>0) и (Т.Серия.НаОстаткахЕгаис.Получить(ТекущаяДата()) <>0) Тогда Док1.НоваяСтрока(); Док1.Товар=Т.Товар; Док1.КодТовара=Т.Товар.Код; КоличествоВЗаказ= Мин(Т.КоличествоПрограмма,Т.КоличествоФакт,Т.Серия.НаОстаткахЕгаис.Получить(ТекущаяДата())); Док1.Колич=КоличествоВЗаказ; Док1.Партия=Т.Серия; УчЦена= Т.Товар.ЦенаПриходнаяСредняя.Получить(Док1.ДатаДок); Док1.ЦенаР = УчЦена-УчЦена/100*Проц; Док1.СуммР = Док1.ЦенаР * КоличествоВЗаказ; КонецЕсли; Конеццикла; Док1.Записать(); |
|||
9
vova1122
26.03.18
✎
18:16
|
(8) и где тут разбиение строго по 40 строк?. А если в таблице больше 200 строк?
|
|||
10
Базис
naïve
26.03.18
✎
18:20
|
Сделай процедуры НачатьДокумент и ЗавершитьДокумент.
Потом: Сч = 0 НачатьДокумент Цикл переборки строк Сч++ Если Сч = 40 Тогда ЗавершитьДокумент Сч = 0 НачатьДокумент КонецЕсли КЦ Если Сч > 0 Тогда ЗавершитьДокумент КонецЕсли |
|||
11
Босечка
26.03.18
✎
19:06
|
попробую
|
|||
12
Босечка
26.03.18
✎
20:13
|
все получилось вроде. спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |