Разбор потока складского документа
Материал из GedeminWiki
Версия от 17:55, 25 августа 2015; Zholnerovich (обсуждение | вклад)
| Код | Тип | Описание | |
|---|---|---|---|
| Version := ReadString; | String | Версия потока | |
| RelationName := ReadString; | String | Название таблицы шапки | |
| RelationLineName := ReadString; | String | Название таблицы позиции | |
| DebitMovement.RelationName := ReadString; | String | Наименование таблицы прихода | |
| DebitMovement.SourceFieldName := ReadString; | String | Наименование поля таблицы прихода | |
| DebitMovement.SubRelationName := ReadString; | String | Наименование таблицы ограничения по приходу | |
| DebitMovement.SubSourceFieldName := ReadString; | String | Наименование поля таблицы ограничения по приходу | |
| Read(DebitMovement.ContactType, SizeOf((TgdcInvMovementContactType)); | TgdcInvMovementContactType | На кого оформлять приход | |
ReadListBegin;
while not EndOfList do
begin
SetLength(DebitMovement.Predefined,
Length(DebitMovement.Predefined) + 1);
DebitMovement.Predefined[Length(DebitMovement.Predefined) - 1] :=
ReadInteger;
end;
ReadListEnd;
|
array of integer | Список значений прихода. Ключи на таблицу gd_contact | |
ReadListBegin;
while not EndOfList do
begin
SetLength(DebitMovement.SubPredefined,
Length(DebitMovement.SubPredefined) + 1);
DebitMovement.SubPredefined[Length(DebitMovement.SubPredefined) - 1] :=
ReadInteger;
end;
ReadListEnd;
|
array of integer | Список значений ограничении по приходу. Ключи на таблицу gd_contact | |
| CreditMovement.RelationName := ReadString; | String | Наименование таблицы расхода | |
| CreditMovement.SourceFieldName := ReadString; | String | Наименование поля таблицы расхода | |
| CreditMovement.SubRelationName := ReadString; | String | Наименование таблицы ограничения по расходу | |
| CreditMovement.SubSourceFieldName := ReadString; | String | Наименование поля таблицы ограничения по расходу | |
| Read(CreditMovement.ContactType, SizeOf(TgdcInvMovementContactType)); | TgdcInvMovementContactType | На кого оформлять расход | |
ReadListBegin;
while not EndOfList do
begin
SetLength(CreditMovement.Predefined,
Length(CreditMovement.Predefined) + 1);
CreditMovement.Predefined[Length(CreditMovement.Predefined) - 1] :=
ReadInteger;
end;
ReadListEnd;
|
array of integer | Список значений расхода. Ключи на таблицу gd_contact | |
ReadListBegin;
while not EndOfList do
begin
SetLength(CreditMovement.SubPredefined,
Length(CreditMovement.SubPredefined) + 1);
CreditMovement.SubPredefined[Length(CreditMovement.SubPredefined) - 1] :=
ReadInteger;
end;
ReadListEnd;
|
array of integer | Список значений ограничения по расходу. Ключи на таблицу gd_contact | |
ReadListBegin;
while not EndOfList do
begin
F := atDatabase.FindRelationField('INV_CARD', ReadString);
if not Assigned(F) then Continue;
FSourceFeatures.AddObject(F.FieldName, F);
end;
ReadListEnd;
|
TgdcInvFeatures | Признаки новой карточки | |
ReadListBegin;
while not EndOfList do
begin
F := atDatabase.FindRelationField('INV_CARD', ReadString);
if not Assigned(F) then Continue;
FDestFeatures.AddObject(F.FieldName, F);
end;
ReadListEnd;
|
TgdcInvFeatures | Признаки существующей карточки | |
| Read(FSources, SizeOf(TgdcInvReferenceSources)); | TgdcInvReferenceSources = set of TgdcInvReferenceSource | Настройка справочников | |
| Read(FDirection, SizeOf(TgdcInvMovementDirection)); | TgdcInvMovementDirection | Остатки определять по методу FIFO, LIFO | |
| FControlRemains := ReadBoolean; | Boolean | Осуществлять контроль остатков | |
| LiveTimeRemains := ReadBoolean | Bollean | Коннтроль только на текущие остатки | |
| DelayedDocument := ReadBoolean; | Boolean | Документ может быть отложенным | |
| MinusRemains := ReadBoolean; | Boolean | Выбор из отрицательных остатков | |
ReadListBegin;
while not EndOfList do
begin
F := atDatabase.FindRelationField('INV_CARD', ReadString);
if not Assigned(F) then Continue;
FMinusFeatures.AddObject(F.FieldName, F);
end;
ReadListEnd;
|
TgdcInvFeatures | Признаки отрицательных остатков | |
| IsChangeCardValue := ReadBoolean; | Boolean | Разрешить изменять признаки существующей карточки | |
| IsAppendCardValue := ReadBoolean; | Boolean | Разрешить добавлять признаки существующей карточки | |
| IsUseCompanyKey := ReadBoolean | Boolean | Ограничение на рабочую компанию | |
| SaveRestWindowOption := ReadBoolean | Boolean | Сохранять настройки окна остатков | |
| EndMonthRemains := ReadBoolean | Boolean | Контроль остатков на конец месяца | |
| WithoutSearchRemains := ReadBoolean | Boolean | Движение без поиска остатков |
TgdcInvFeatures = array of String;
TgdcInvReferenceSource = (irsGoodRef, irsRemainsRef, irsMacro); irsGoodRef - в качестве справочника используется справочник товаров irsRemainsRef - в качестве справочника используется справочник остатков ТМЦ irsMacro - в качестве справочника используется справочник, получаемый из макроса(это нам не нужно)
TgdcInvMovementDirection = (imdFIFO, imdLIFO, imdDefault); imdFIFO - очередь imLIFO - стек imdDefault - по каждому ТМЦ
debitmovement
| Название | Поле | Описание |
|---|---|---|
| debitmovementrelationkey | relationkey | Ключ таблицы прихода |
| debitmovementsourcefieldkey | relationfieldkey | Ключ поля таблицы прихода |
| debitmovementsubrelationkey | relationkey | Ключ таблицы ограничения по приходу |
| debitmovementsubsourcefieldkey | relationfieldkey | Ключ поля таблицы ограничения по приходу |
| debitmovementcontacttype | str_value |
На кого оформлять приход Значения: imctourcompany - Наша рабочая организация imctourdepartment - Подразделение нашей рабочей организации imctourpeople - Сотрудник нашей организации imctcompany - Клиент (Юридическое лицо) imctcompanydepartment - Подразделение клиента imctcompanypeople - Сотрудник клиента imctpeople - Физическое лицо |
| debitmovementpredefinedkey | contactkey | Значение прихода. Ключ на таблицу gd_contact |
| debitmovementsubpredefinedkey | contactkey | Значение ограничения по приходу. Ключ на таблицу gd_contact |