Инфо-Предприятие - Форум
ПрограммыПоддержкаКупитьПартнерам

Вернуться   Инфо-Предприятие - Форум > Платформа разработки > Общий
Регистрация Обмен опытом Справка Пользователи Календарь Поиск Сообщения за день Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 04.05.2021, 02:22
Сергей, г.Торжок Сергей, г.Торжок вне форума
Участник
 
Регистрация: 10.02.2019
Адрес: г.Торжок, Тверская обл.
Сообщений: 94
По умолчанию Как программно создавать и проводить операции и платежные документы?

Задача:
Из обработки программно создать и провести несколько документов как в журнале "Операции", так и "Платежные документы".
Например: Платежный_документ/Поступление_на_рсч, Операцию/Реализация и т.п.


Операцию "Реализация" создаю и пытаюсь провести так:
Код:
ФУНКЦИЯ ЛОГИКА: НоваяРеализация
  то ЭТО тс_операции
  то.код_фирмы = "Наша"            // с_клиенты.код
  то.вид_то_ид = 1                        // тс_виды_то.ид
  то.дата = ДАТА_ТЕК
  то.время = ВРЕМЯ_ТЕК
  то.код_клиента = "КодКлиента" // с_клиенты.код
  то.код_склада = "ОСН"               // с_склады.код
  то.цены_категории_ид = 5          // тс_цены_категории.ид
  то.комментарий = "Тестовая запись"
  то.ЗАПИСАТЬ
  то.ПРОВЕСТИ
КОНЕЦ_ФУНКЦИИ
Платежный документ "Поступление на рсч":
Код аналогичен коду выше, только отличается полями, поэтому повторять не буду
Код:
жпд ЭТО ж_плат_док
...
жпд.ЗАПИСАТЬ
И, поскольку обнаружил через IDExpert, что при ручном создании такого документа, также появляется запись в журнале "Платежные документы, детализация", создаю запись и в этом журнале, после чего пытаюсь провести основную запись:
Код:
жпд_д ЭТО ж_плат_док_доп
жпд_д.идлинк = пд.ид
...
жпд_д.ЗАПИСАТЬ
жпд_д.ПРОВЕСТИ(НЕТ)
Проблемы:
1) Записи сохраняются в журналы, но не проводятся.

2) Через IBExpert вижу в таблице TS_OPERATIONS поля IP$FLAG, IP$USER, IP$CHANG_USER.
Но записать в них значения через ж_плат_док не могу, так как в настройке журналов в ИнфП нет таких полей.

Соответственно значения этих полей в записи созданной программно отличаются от записи созданной вручную.
Понимаю, что это служебные поля программы, но может быть из-за их значений и не проводится программно созданная Реализация?

3) Аналогичные поля есть и в таблице J_PLAT_DOK, она же журнал ж_плат_док_доп.
И они также отличаются в ручной записи и программной.

4) Соответственно, если созданную запись открыть в журнале, внести изменения в какое-то поле и попытаться сохранить, нажав ОК.
То вот тогда запись проводится.


Дополнительные вопросы:
Может быть записи журналов при программном создании, надо создавать иным способом?
Или есть какие-то тонкости?


Также кто может пояснить - какой смысл несет журнал "Платежные документы, детализация" ж_плат_док_доп? В отличии от тс_операции (реквизиты операции) и тс_операции_доп (таблица товаров и услуг) - вижу в ж_плат_док_доп дублирующие поля связанной записи в основном журнале ж_плат_док?

Последний раз редактировалось Сергей, г.Торжок, 04.05.2021 в 14:34.
Ответить с цитированием
 


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Платежные документы Arndt Торговый склад 10 02.03.2021 17:15
Платежные документы Arndt Торговый склад 2 12.03.2020 18:47
Платежные документы и ТС Писарев Петр Торговый склад 12 08.12.2011 19:56


Часовой пояс GMT +4, время: 14:09.


vBulletin® Version 3.6.8.
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
Перевод: zCarot
© 1999 Новасофт