|
1С-ЭДО. Программно созданный документ не попадает в обработку ИнтерфейсДокументовЭДО | ☑ | ||
---|---|---|---|---|
0
PolinaPykh
21.11.22
✎
10:57
|
Есть внешняя обработка, которая программно создает счета на оплату и документы на реализацию (акты), при этом акты попадают в список исходящие-создание в ИнтерфейсеДокументовЭДО, а счета на оплату - нет. И в списке счетов не отражается состояние ЭДО. //это какой-то суслик из ДМБ "ту его не видишь, а он есть"
Если создавать документы собственно через форму счета/акта - все ок. Сталкивались ли вы с такой проблеммой? А если нет - откуда можно попробовать ее "размотать"? Хэлп ми самбади! |
|||
1
mikecool
21.11.22
✎
11:03
|
сравни не программный и программный счет по реквизитам, думай
|
|||
2
PolinaPykh
21.11.22
✎
14:31
|
(1) Вот вроде в реквизитах проблем не вижу. СостояниеЭДО вызывается послеЗаписиНаСервере, т.е. когда программно созданный документ записан, должен выполняться код в процедуре ПослеЗаписиНаСервере в СчетеНаОплатуПокупателю (или в в любом документе, в принципе), я правильно понимаю?
Или меня уже теоретическая база подводит? |
|||
3
mikecool
21.11.22
✎
15:05
|
(2) а чего теорией мучиться? вперед, в практику, в отладку
|
|||
4
PolinaPykh
21.11.22
✎
15:07
|
(3) и то верно, хотя отладка внешней обработки отдельный квест в который я еще ни разу не пробовала
|
|||
5
Garykom
гуру
21.11.22
✎
15:11
|
(0) Вероятно внешняя обработка неправильно записывает счета и не вызывает требуемых обработчиков
Надо там ДокументСчет.Заполнить(Неопределено); И запись делать без "ОбменДанными.Загрузка = Истина" |
|||
6
Garykom
гуру
21.11.22
✎
15:12
|
(5)+ Короче для 1С-ЭДО надо чтобы записи в РС для доков делались
|
|||
7
PolinaPykh
21.11.22
✎
15:16
|
(5) Попробую. Спасибо
|
|||
8
Garykom
гуру
21.11.22
✎
15:23
|
(7) учти что Заполнить(Неопределено) должно быть в определенном месте относительно установки реквизитов дока
Или можно создать Структуру и на основании ее сделать заполнение |
|||
9
PolinaPykh
21.11.22
✎
15:31
|
(8) Идея со структурой мне нравится больше)
|
|||
10
PolinaPykh
22.11.22
✎
16:50
|
(6) А вопрос: вот такой код выглядит приемлемо для заполнения РС?
//запись в регистр сведений СостоянияПоОбъектамУчетаЭДО Если ЭДО Тогда НоваяЗапись = РегистрыСведений.СостоянияПоОбъектамУчетаЭДО.СоздатьМенеджерЗаписи(); НоваяЗапись.СсылкаНаОбъект = НовыйДок.Ссылка; НоваяЗапись.СостояниеЭДО = Перечисления.СостоянияДокументовЭДО.НеНачат; НоваяЗапись.Вид = "Счет на оплату"; НоваяЗапись.Контрагент = НовыйДок.Контрагент; НоваяЗапись.Организация = НовыйДок.Организация; НоваяЗапись.Номер = НовыйДок.Номер; НоваяЗапись.СуммаДокумента = НовыйДок.СуммаДокумента; НоваяЗапись.Записать() КонецЕсли; //конец записи в регистр Или лучше с набором? Мне, кажись, опыта не хватает( |
|||
11
Garykom
гуру
22.11.22
✎
17:01
|
(10) Отладка - Замер производительности
Затем в режиме Предприятия делаешь запись дока и изучаешь код Там поищи по "СостоянияПоОбъектамУчетаЭДО" |
|||
12
PolinaPykh
22.11.22
✎
17:02
|
(11) Данке)
|
|||
13
Garykom
гуру
22.11.22
✎
17:02
|
(11)+ Подозреваю что не надо вручную в РС писать, уже есть готовые процедуры/функции
|
|||
14
Ногаминебить
22.11.22
✎
17:09
|
Есть же функция вроде готовая для установки состояния. Если БП 3.0 - то где-нить в ЭлектронныеДокументыЭДО можно стырить.
|
|||
15
PolinaPykh
22.11.22
✎
17:10
|
(13) Точно есть. Там целый модуль есть ИнтеграцияЭДО, в котором регистр пишется. Но из типового документа до него доходит "курсор" при отладке через 9 других модулей, причем первый шаг вызывается из модуля формы. И я не могу понять надо ли мне проходить этот тяжкий путь, а главное - никогда не обращалась к общим модулям из внешней обработки (но это фигня - наверняка где-то в книжках это описано)
|
|||
16
PolinaPykh
22.11.22
✎
17:11
|
(14) попробую, мне кажется я уже мудрю в чудовищно "нетуда".
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |