|
v7: Перебор табличной части "товары" - 7.7 ↓Ø (Волшебник 04.01.2025 14:36) | ☑ | ||
---|---|---|---|---|
0
Маленький Вопросик
04.01.25
✎
12:31
|
Товарищи, здравствуйте!
Прошу подсказать дилетанту: Запросом я выгрузил в "таблицу" "шапку" документа ТЗДок1.НоваяСтрока(); ТЗДок1.Ссылка = Запрос.ЗаявкаПокупателя; ТЗДок1.Инфа1 = Запрос.Контрагент; ТЗДок1.Инфа2 = Запрос.СуммаСумма; ТЗДок1.Инфа3 = Запрос.СуммаНДССумма; теперь, я хочу по каждой строке "ссылке" - получить список номенклатуры в табличной части документа: Прошу подсказать как это сделать) - я так понимаю, нужно получить документ по ссылке в строке таблицы Спасибо. Примерчик бы кто привел. Речь идет от 7.7 Всех с 2025! |
|||
1
Волшебник
04.01.25
✎
12:33
|
А что дилетанты в 2025 году делают в семёрке?!
|
|||
2
Волшебник
04.01.25
✎
12:33
|
Ну кроме того, что создают безумные поля "Инфа1-3"...
|
|||
3
Злоп
04.01.25
✎
12:39
|
Док = создатьобъект("документ. Заявкапокупателя");
Док. НайтиДокумент(запрос. Заявкапокупателя); Док. Выбратьстроки(); Пока дома. Получитьстроку()=1 цикл |
|||
4
Злоп
04.01.25
✎
12:41
|
И тащить зпросом контрагента и суммы и прочие реквизиты шапки особого смысла не имеет ибо практически двойное чтение данных, т.к. ты все равно получаешь весь объект для перебора строк, а раз объект получен то и контрагента и суммы с него тянуть можно
|
|||
5
Маленький Вопросик
04.01.25
✎
12:42
|
Ребята, отбой...
ДокТЗ=СоздатьОбъект("Документ"); ДокТЗ.ВыбратьДокументы(ТЗДок1.Ссылка); Если ДокТЗ.ПолучитьДокумент() = 1 Тогда ДокТЗ.ВыбратьСтроки(); Пока ДокТЗ.ПолучитьСтроку() = 1 Цикл Сообщить(ДокТЗ.Номенклатура); Сообщить(ДокТЗ.Количество); КонецЦикла; КонецЕсли; |
|||
6
Злоп
04.01.25
✎
12:43
|
Если уже тянешь запросом доки то и ТЧ запросом тяни нужные реквизиты из тч.
|
|||
7
Маленький Вопросик
04.01.25
✎
12:43
|
(1) не поверишь, больше некому... сам сижу пока время есть - ковыряюсь...
(3) вот так не взлетело, нужно именно выбрать документы (ссылка) - как я понял.... |
|||
8
Маленький Вопросик
04.01.25
✎
12:44
|
ну а так да, всем спасибо - вопрос закрыт!
|
|||
9
Злоп
04.01.25
✎
12:44
|
(5) хрень полная
|
|||
10
Злоп
04.01.25
✎
12:46
|
(7) что у тебя по (3) не взлетело? Ссылка на заявку у тебя - единственная, нахрена выбрать документы...
|
|||
11
Маленький Вопросик
04.01.25
✎
12:46
|
(9) документ и строки в 7-ке - это одна табличная часть или несколько? или на документ полагается 2 таблицы - шапка и строки?
|
|||
12
Злоп
04.01.25
✎
12:49
|
Плюс к этому
Количество с тч необязательно в базовых единицах, поэтому КоличествоБЕ = док.Количество * док. Коэффициент |
|||
13
Злоп
04.01.25
✎
12:49
|
(11) для работы с платформой тебя это не должно интересовать
|
|||
14
AAA
04.01.25
✎
12:51
|
(11)Каждый документ это -
1 - запись в журнале 2 - таблица шапки 3 - таблица табличной части (если есть у вида документа) |
|||
15
Злоп
04.01.25
✎
12:52
|
DT тч
DH - шапка При этом в зависимости от граф журналов и общих реквизитов данные по шапке и в других таблицах может хранитьсч |
|||
16
Злоп
04.01.25
✎
12:54
|
Продолжаем по (12)
Сумма по документу как итог ТЧ соответствующего реквизита может включать или не включать ндс - зависит от реквизита шапки регулирующего входит или не входит ндс в сумму |
|||
17
Злоп
04.01.25
✎
12:56
|
Если валюта документа совпадает с валютой договора то полную сумму по документу можно взять из реквизита шапки СуммаВзаиморассетов
|
|||
18
Маленький Вопросик
04.01.25
✎
13:00
|
(16) в этом плане в 8-ке ничего не изменилось
|
|||
19
AAA
04.01.25
✎
13:02
|
(18)в 8-ке несколько табличных частей, а в 7.7 одна, это разве не изменение ?
|
|||
20
maxab72
04.01.25
✎
13:03
|
на старом сайте мисты были учебники по семерке для самых начинающих.
|
|||
21
Маленький Вопросик
04.01.25
✎
13:09
|
(20) - на самом деле задача не тривиальная для "новичка" - необходимо выгрузить выбранные документы в ТЗ, а от туда в json с подмассивами табличных частей...
собственно я ее уже сделал, поэтому тему можно закрыть! |
|||
22
Волшебник
04.01.25
✎
13:21
|
(20) https://old.mista.ru/tutor_1c/index.htm
(21) И правильно. Хватит дурдома Кстати, пишется "оттуда" |
|||
23
MWWRuza
04.01.25
✎
13:31
|
(9) Почему хрень?
Там все в принципе почти все верно, только не как обработка запроса, а как самостоятельная обработка получения нужного... Кроме этого: "ДокТЗ.ВыбратьДокументы(ТЗДок1.Ссылка);" У метода "ВыбратьДокументы" параметры "ДатаНачала" и "ДатаОкончания" периода выборки документов. Или дата, или документ. Если "констркукция в скобках" - "ТЗДок1.Ссылка" это ссылка на документ, полученная из запроса, то будут выбраны все документы этого вида, начинающиеся с него и по последний документ в системе. Только не понятен смысл этого, зачем такие сложности, что этим хотите добиться? |
|||
24
AAA
04.01.25
✎
13:58
|
(21)так выгружайте в ТЗ требуемые ссылки, а затем уже будете формировать файл JSON обходя ТЗ и для ее каждой строки формировать товарную часть документа в JSON
Может придется вытащить ТЗ в диалог с флажком. Задача нетривиальная для Ваших знаний ) |
|||
25
MWWRuza
04.01.25
✎
14:08
|
+(23)(24) могу предположить, что запросом отбираются не все документы за период, а по какому-то хитрому условию в самом запросе...
Тогда, самый простой вариант, в (24). Хотя, тут тоже варианты - можно и в том-же запросе получить нужное, оставив условие на выборку документов и добавив обход табличных частей отдельной группировкой запроса, а можно и обходить в выборке в цикле ТЧ нужных доков, не выгружая в ТЗ, прямо из перебора результата запроса... Хотя, с ТЗ - самый простой и "наглядный" вариант, проще отладить. |
|||
27
Маленький Вопросик
04.01.25
✎
14:29
|
Есть еще один момент: Подскажите функцию по обработке спец-символов?
|
|||
28
Маленький Вопросик
04.01.25
✎
14:30
|
(25) - да-да, галочкой в ТЗ отмечает пользователь.. что выгружать а что нет
|
|||
29
Волшебник
04.01.25
✎
14:36
|
(21) готово
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |