Передача документов ГБ клиенту — различия между версиями
Материал из GB wiki
Iv (обсуждение | вклад) (Новая страница: «Категория:Сервер удаленного заказа») |
Iv (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
[[Категория:Сервер удаленного заказа]] | [[Категория:Сервер удаленного заказа]] | ||
+ | |||
+ | == Описание == | ||
+ | Система удаленного заказа позволяет передавать клиенту документы ГБ. Документы передаются клиенту при получении прайс-листа и отображаются в Журнале. | ||
+ | |||
+ | == Требования == | ||
+ | ;Версии сервера 1.5.0.77 и старше | ||
+ | ;Версия клиента 3.1.8.13 и старше | ||
+ | |||
+ | == Настройка == | ||
+ | ;1. Настроить в ГБ схему нотификаций: | ||
+ | *:Для клиента, которому надо будет передавать документы, создать схему нотификаций, в комментарии которой должна быть строка '''[RSERV NOTIFICATION]''' | ||
+ | Пример: | ||
+ | insert into notificationschemes(id, userid, objecttype, sendtype, comment) values (1020,15192,11,11,'[RSERV NOTIFICATION]') | ||
+ | |||
+ | где 1020 – код новой схемы, взятый по правилу: select max(id) from notificationschemes + 1; 15192 – код партнера, | ||
+ | 11 – тип объекта (в данном случае документ). | ||
+ | *:Описать условия, когда формируется нотификация (в данном случае, момент, когда документ готов для отправки клиенту) | ||
+ | Пример: | ||
+ | insert into notificationconds(scheme, fieldname, operation, datavalue) values(1020,'DocType','=','23') | ||
+ | insert into notificationconds(scheme, fieldname, operation, datavalue) values(1020,'Partner','=','15192') | ||
+ | insert into notificationconds(scheme, fieldname, operation, datavalue) values(1020,'Flag','>=','300') | ||
+ | insert into notificationconds(scheme, fieldname, operation, datavalue) values(1020,'Flag','<','400') | ||
+ | тут описано, что для документов типа 23, выписанных на партнера 15192 в момент, когда его состояние (поле Flag) станет больше 300, | ||
+ | но меньше 400, надо сформировать нотификацию по схеме 1020 (ид новой схемы) . | ||
+ | |||
+ | ;2. Настроить сервер | ||
+ | *:Создать в папке данных RServ (обычно ..\Dat\) файл DocDesc.dat с описанием шаблонов передаваемых документов. | ||
+ | *:Формат файла аналогичен формату ини-файла. Шаблон для каждого документа состоит из двух секций: '''Header''' и '''Lines'''. | ||
+ | *:;Header | ||
+ | *::Описание полей, входящих в шапку документа | ||
+ | *:;Lines | ||
+ | *::Колонки документа. | ||
+ | *:Так как существует возможность передачи документов разного типа, то при описании шаблонов необходимо в названии секции | ||
+ | *:указывать тип документа (Header[код типа документа] или Lines[код типа документа] соответственно). | ||
+ | Пример файла: | ||
+ | [Header23] | ||
+ | date[Дата,fmDate]=DocDate | ||
+ | name[Название,fmName+40]=DocNumber | ||
+ | [Lines23] | ||
+ | Articul=Articul | ||
+ | Name[Наименование,fmName+80]=Articul.Name | ||
+ | Pack=Pack | ||
+ | Quantity=Quantity | ||
+ | PriceForOne[Цена за ед,fmAmount]=PriceList | ||
+ | PriceNds[Цена с НДС,fmAmount]=Price | ||
+ | |||
+ | Замечания: | ||
+ | Для включения в тело документа стандартной колонки достаточно указать ее название: Articul=Articul. Дополнительные колонки | ||
+ | необходимо описывать полностью: Name[Наименование,fmName+80]=Articul.Name | ||
+ | '''Стандартные поля, входящие в шапку документа:''' | ||
+ | *Id | ||
+ | *Firm | ||
+ | *OperationDate | ||
+ | *Kind | ||
+ | *TotalSum | ||
+ | *Currency | ||
+ | *CurrRate | ||
+ | *Partner | ||
+ | *Agent | ||
+ | *Stock | ||
+ | *Imported_Id | ||
+ | *Flag | ||
+ | *DocType | ||
+ | *DocNumber | ||
+ | *DocDate | ||
+ | *DocCurrency | ||
+ | *DocCurrRate | ||
+ | *Prev_DocType | ||
+ | *Prev_DocNumber | ||
+ | *Prev_DocDate | ||
+ | *Scheme | ||
+ | *Contract | ||
+ | *ExpectedDate | ||
+ | *Heap | ||
+ | '''Стандартные поля, входящие в тело документа:''' | ||
+ | *Id – код товарной строки | ||
+ | *Document – код документа | ||
+ | *Articul – код товара | ||
+ | *Quantity - количество | ||
+ | *Price – цена с ндс | ||
+ | *MaxPrice – не используется | ||
+ | *PriceList – цена без ндс | ||
+ | *Contents – количество штук в упаковке | ||
+ | *Pack – код упаковки | ||
+ | *Heap – не используется |
Текущая версия на 10:15, 14 декабря 2010
Описание
Система удаленного заказа позволяет передавать клиенту документы ГБ. Документы передаются клиенту при получении прайс-листа и отображаются в Журнале.
Требования
- Версии сервера 1.5.0.77 и старше
- Версия клиента 3.1.8.13 и старше
Настройка
- 1. Настроить в ГБ схему нотификаций
- Для клиента, которому надо будет передавать документы, создать схему нотификаций, в комментарии которой должна быть строка [RSERV NOTIFICATION]
Пример: insert into notificationschemes(id, userid, objecttype, sendtype, comment) values (1020,15192,11,11,'[RSERV NOTIFICATION]') где 1020 – код новой схемы, взятый по правилу: select max(id) from notificationschemes + 1; 15192 – код партнера, 11 – тип объекта (в данном случае документ).
- Описать условия, когда формируется нотификация (в данном случае, момент, когда документ готов для отправки клиенту)
Пример: insert into notificationconds(scheme, fieldname, operation, datavalue) values(1020,'DocType','=','23') insert into notificationconds(scheme, fieldname, operation, datavalue) values(1020,'Partner','=','15192') insert into notificationconds(scheme, fieldname, operation, datavalue) values(1020,'Flag','>=','300') insert into notificationconds(scheme, fieldname, operation, datavalue) values(1020,'Flag','<','400') тут описано, что для документов типа 23, выписанных на партнера 15192 в момент, когда его состояние (поле Flag) станет больше 300, но меньше 400, надо сформировать нотификацию по схеме 1020 (ид новой схемы) .
- 2. Настроить сервер
- Создать в папке данных RServ (обычно ..\Dat\) файл DocDesc.dat с описанием шаблонов передаваемых документов.
- Формат файла аналогичен формату ини-файла. Шаблон для каждого документа состоит из двух секций: Header и Lines.
- Header
- Описание полей, входящих в шапку документа
- Lines
- Колонки документа.
- Так как существует возможность передачи документов разного типа, то при описании шаблонов необходимо в названии секции
- указывать тип документа (Header[код типа документа] или Lines[код типа документа] соответственно).
Пример файла: [Header23] date[Дата,fmDate]=DocDate name[Название,fmName+40]=DocNumber [Lines23] Articul=Articul Name[Наименование,fmName+80]=Articul.Name Pack=Pack Quantity=Quantity PriceForOne[Цена за ед,fmAmount]=PriceList PriceNds[Цена с НДС,fmAmount]=Price
Замечания: Для включения в тело документа стандартной колонки достаточно указать ее название: Articul=Articul. Дополнительные колонки необходимо описывать полностью: Name[Наименование,fmName+80]=Articul.Name
Стандартные поля, входящие в шапку документа:
- Id
- Firm
- OperationDate
- Kind
- TotalSum
- Currency
- CurrRate
- Partner
- Agent
- Stock
- Imported_Id
- Flag
- DocType
- DocNumber
- DocDate
- DocCurrency
- DocCurrRate
- Prev_DocType
- Prev_DocNumber
- Prev_DocDate
- Scheme
- Contract
- ExpectedDate
- Heap
Стандартные поля, входящие в тело документа:
- Id – код товарной строки
- Document – код документа
- Articul – код товара
- Quantity - количество
- Price – цена с ндс
- MaxPrice – не используется
- PriceList – цена без ндс
- Contents – количество штук в упаковке
- Pack – код упаковки
- Heap – не используется