Дата в циклической обработке TXOApi
Добавлено: 24 июл 2013, 14:05
Добрый день!
Есть задача по определенному алгоритму с помощь ТХО создавать несколько одинаковых проводок с разной датой.
Взял пример TXOApi и сделал следующее:
Все хорошо компилируется.
ТХО настроена вот так:
А на выходе получается одна проводка на сумму 21 и без даты!
Что я делаю неправильно?
Есть задача по определенному алгоритму с помощь ТХО создавать несколько одинаковых проводок с разной датой.
Взял пример TXOApi и сделал следующее:
Код: Выделить всё
/*
╔═══════════════════════════════════════════════════════════════════════════╗
║ (c) 1994,2000 корпорация ГАЛАКТИКА ║
║ Проект : ГАЛАКТИКА ║
║ Система : Бухгалтерский контур ║
║ Версия : 5.8x ║
║ Назначение : Пример использования TXO API ║
║ Ответственный : Ларин Михаил Николаевич (larin@galaktika.by) ║
║ Параметры : есть ║
╚═══════════════════════════════════════════════════════════════════════════╝
*/
#include TxoApi.vih
// Начиная с версии 5.85 в наименовании интерфейса
// обязательно использовать префикс "Txo_"
// Указываем, что наш интерфейс реализует расчет идентификатора ТХО
VipInterface Txo_KatSoprDemo implements ObjTxoIdentPlugin;
// Простой интерфейс для обработки накладной
Interface Txo_KatSoprDemo;
// Логическая таблица, описывает стуктуру накладной
create view DemoView
var
CurTiDkGal : word;
CurSoprDoc : comp;
P1 : String;
P2 : String;
as select
*
from
Katsopr,
SpSopr
where
((
CurSoprDoc == KatSopr.Nrec and
CurSoprDoc == SpSopr.cSopr
));
function GetInfo : string;
{
GetInfo := 'Пример использования TXO API для накладных';
}
function ParamMaster : string;
{
Message(''#3'здесь должен быть вызов окошка, чтобы помочь пользователю'#13+
''#3'заполнить строку дополнительных параметров идентификатора:'#13+
''#3'[Param1:"xxx"][Param2:"yyy"]');
ParamMaster := '[Param1:"xxx"][Param2:"yyy"]';
}
procedure StoreCycles(hTxo : longint; buf : TTxoApiInfoDoc);
{
// установить ограничения на логическую таблицу
CurTiDkGal := buf.TiDkGal;
CurSoprDoc := buf.cSoprDoc;
// заполнить нециклическую аналитику
if (getfirst KatSopr = tsOk)
{
TxoHeadAddKau(hTxo, 0,1,KatSopr.cOrg); // организация
TxoHeadAddKau(hTxo, 0,2,KatSopr.cPodrTo); // подразделение
}
// построить выгрузку циклов
// очистить промежуточный буффер
TxoBodyClear(hTxo);
TxoBodyAddDate(hTxo,3,To_Date(1,1,2013))
// закачать суммы
TxoBodySetSum(hTxo, 10,10,10);
// добавить в выгрузку
TxoBodyInsert(hTxo);
TxoBodyClear(hTxo);
TxoBodyAddDate(hTxo,3,To_Date(2,2,2013))
// закачать суммы
TxoBodySetSum(hTxo, 11,11,11);
// добавить в выгрузку
TxoBodyInsert(hTxo);
}
end.
ТХО настроена вот так:
А на выходе получается одна проводка на сумму 21 и без даты!
Что я делаю неправильно?