Имя: Пароль:
1C
 
Диадок: Можно ли отправлять впф для отобранных документов??
0 evorle145
 
12.11.25
11:23
Для СФ/РТУ, где есть товары - требуется отправлять в пакете дополнительную внешнюю печатную форму (Спецификация), а где есть услуги - отправлять не надо.

В настройках модуля Диадока есть возможность сделать настройку, чтобы такая форма отправлялась, но она тогда начинает отправляться для всех документов, а надо только для тех, где есть только исключительно товары...

вот тут все вроде просмотрел
https://developer.kontur.ru/Docs/Diadoc_UM/func/Poluchit%27TablitsuIspol%27zuyemykhPaketov.html

но нужного не нашел.. Может кто сталкивался или есть идеи?
1 PLUT
 
гуру
12.11.25
12:04
(0) есть идея обратиться в техподдержку Контура и занести им денежку, чтобы в ПМ добавили магию

я сталкивался :) осадочек остался
2 evorle145
 
12.11.25
12:10
(1) А отладку полноценно включить удалось? Там же в обработке десятка два вложенных обработок, например, есть КонтурДиадокЯдро.epf

но как в нее отладчиком попасть?
в самой обработке диадока отладку включил, все положил в каталог, на который есть права у службы 1С, но нифига.. отладчик туда не собирается заходить...
3 PLUT
 
гуру
12.11.25
12:14
(2) так вы сами хотите во всём этом разобраться?

время - деньги, которых у нас нет
4 1cVandal
 
12.11.25
12:25
а в впф спецификации перед созданием таб дока проверить есть ли товары нельзя?
5 evorle145
 
12.11.25
12:46
(4) это первое что было сделано.. но не прокатило... Потому что вернуть результат Неопределено - нельзя. Если вернуть результат Новый ТабличныйДокумент, то клиенту улетит просто пустой лишний документ.
6 АгентБезопасной Нацио
 
12.11.25
12:49
Сделай в ПМ. Можешь тупо спецификацию свою добавлять во все , и удалять в ПослеПодготовкиПакета если не нужно... Или добавляй там же в ПодготовитьПакет
7 АгентБезопасной Нацио
 
12.11.25
12:50
(2) Отладчик заходит в ПМ после перезапуска (если ПМ внешний,  а не внутри конфиги)
8 rozer76
 
12.11.25
13:03
(2) все работает, включение отладки сохраняет все 100500 макетов в папки с файлами - открывай нужный, например, КонтурДиадокЯдро.epf и отлаживай на здоровье.
9 АгентБезопасной Нацио
 
12.11.25
13:15
(8) Отлаживать Ядро - занятие не  для слабонервных (кстати, и СБИС - тоже, не только Контур). Да ему и не надо - сделал ПМ, поставил бряки на событиях, и достаточно
10 evorle145
 
12.11.25
13:56
Прошу помощи: почему при изменении данных в ПМ при возвращении в ядро - результат не виден?
Ниже есть функция "Пакеты_НовыйПакет", в ней идет обращение к ПМ
ПодключаемыйМодуль_ОбработатьСобытие("ПослеПодготовкиПакета", Новый Структура("Пакет", Результат));

отладчиком я забегаю в нее, вижу, что в ПМ все удаляется, но когда отладчик выходит из ПМ, то есть сразу после выполнения "ПодключаемыйМодуль_ОбработатьСобытие..."
то в структуре Результат все без изменений, как будто я передаю в процедуру 2-ой параметр по значению, а не фактический...




p.s. Отладка ядра заработала. Подключил ядро как внеш обработку и дальше через спец инструмент отладки внеш печ форм и обработок - запустил.




Полный текст функции из ядра на всякий случай:

Функция Пакеты_НовыйПакет(СтрокаСписка, ПроверятьXDTO)

    Результат = Пакеты_ПодготовитьНовыйПакет(СтрокаСписка);
    
    Если ЗначениеЗаполнено(Результат.ПараметрыШаблона.LockMode)
        И НРег(Результат.ПараметрыШаблона.LockMode) <> НРег("None") Тогда
        Результат.Заблокирован = Истина;
    КонецЕсли;
    
    Пакеты_ЗаполнитьМетаданныеДокументов(Результат, Ложь, ПроверятьXDTO);
    Пакеты_ЗаполнитьСвязиДокументамиОснованиями(Результат);
    Пакеты_ЗаполнитьНеобходимостьШифрованияДокументов(Результат);
    Пакеты_ВалидацияДокументов(Результат);
    
    ПодключаемыйМодуль_ОбработатьСобытие("ПослеПодготовкиПакета", Новый Структура("Пакет", Результат));
    
    Возврат Результат;
    
КонецФункции
11 evorle145
 
12.11.25
14:22
//Может диадок должен был написать ядро иначе?


    ПередаваемыйРезультат = Новый Структура("Пакет", Результат);
    ПодключаемыйМодуль_ОбработатьСобытие("ПослеПодготовкиПакета", ПередаваемыйРезультат);
    Результат = ПередаваемыйРезультат.Пакет;
    
    Возврат Результат;
12 Bigbro
 
12.11.25
18:10
(11) может.
но это обработка которая пишется уже с десяток лет десятками разработчиков, там от версии к версии видно как подход к разработке плывет, но что-то тянется годами.
а с исправлениями вообще беда. даже если 100% доказываешь что проблема в типовой реализации их кода ответ один платите денег мы исправим))
так что приходится самостоятельно.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn