опечатка в конструкторе
This commit is contained in:
parent
84a65962ec
commit
90e0706497
@ -625,7 +625,7 @@ NIOFamilyGenitive | Отображение ФИО работника в форм
|
||||
* **Название** - задается название операции, например, Создать "Заявление на ежегодный отпуск";
|
||||
* **Тип документа** - выбирается к какому типу документа необходимо добавить меню операций;
|
||||
|
||||
!!! "Примечание"
|
||||
!!! note
|
||||
По умолчанию создается новый документ без заполненных полей. В случае когда необходимо создать новый документ (как на конструкторе, так и любой другой) с заполненными данными из первичного документа, возможно реализовать через столбец "Скрипт по созданию документа".
|
||||
|
||||
* **Подтип** - выбирается к какому типу документа необходимо добавить меню операций;
|
||||
@ -1499,4 +1499,89 @@ NIOFamilyGenitive | Отображение ФИО работника в форм
|
||||
|
||||
*Инструкцию по созданию пользовательского типа атрибута см. главу [Пользовательские типы атрибутов документа](../Пользовательские типы атрибутов документов/index.md).*
|
||||
|
||||
*О том, как использовать созданный пользовательский тип см. раздел [Описание полей в таблице "Дополнительные атрибуты". Тип группы (Unispr)](#описание-ChCode) и [Что писать в Тип группы (Unispr)?](#chcode).*
|
||||
*О том, как использовать созданный пользовательский тип см. раздел [Описание полей в таблице "Дополнительные атрибуты". Тип группы (Unispr)](#описание-ChCode) и [Что писать в Тип группы (Unispr)?](#chcode).*
|
||||
|
||||
```sql
|
||||
DO
|
||||
$$
|
||||
declare "_PCode" bigint;
|
||||
declare "_VCode" bigint;
|
||||
declare "_CDate" timestamptz := now();
|
||||
declare "_CHost" character varying(255) := inet_client_addr();
|
||||
declare "_CUser" character varying(255) := lex."getVirtualLogin"();
|
||||
declare "_COrg" bigint := lex."getOrgId"();
|
||||
declare _TypePersonalOrder bigint;
|
||||
_TypeNamePersonalOrder varchar(255);
|
||||
_FlagMove int ;
|
||||
|
||||
BEGIN
|
||||
|
||||
if "_DocumentCategory" is not null then
|
||||
select ty."IdTypeTimeWork", 'Base.'::varchar(255)|| coalesce(ty."NameModel"::varchar(255),''::varchar(255)), ty."FlagMove"
|
||||
from dfd."DocumentConstructor" dc
|
||||
join dfd."DocumentSubtype" ds on dc."DocumentSubtype" = ds."VCode"
|
||||
join comdoc."VTypePersonalOrder" ty on ds."TypePersonalOrder" = ty."VCode"
|
||||
where dc."VCode" = "_DocumentCategory"
|
||||
into _TypePersonalOrder, _TypeNamePersonalOrder, _FlagMove;
|
||||
end if;
|
||||
|
||||
if _FlagMove = 2 then
|
||||
|
||||
"_PCode" := lex."L8_sp_GenCode" ('RP_DocAbsence', 1);
|
||||
"_VCode" := lex."L8_sp_GenCode" ('RP_WorkerAbsence', 1);
|
||||
|
||||
INSERT INTO aw."RP_DocAbsence" (
|
||||
"VCode", "TypeName", "DateDoc",
|
||||
"CDate", "CHost", "CUser", "COrg",
|
||||
"WDate", "WHost", "WUser", "WOrg"
|
||||
)
|
||||
VALUES (
|
||||
"_PCode", coalesce(_TypeNamePersonalOrder,"_TypeName"), coalesce("_DateDoc","_CDate"),
|
||||
"_CDate", "_CHost", "_CUser", "_COrg",
|
||||
"_CDate", "_CHost", "_CUser", "_COrg"
|
||||
);
|
||||
|
||||
INSERT INTO aw."RP_WorkerAbsence" (
|
||||
"VCode", "Pcode", "IdWorker", "IdTypePer",
|
||||
"CDate", "CHost", "CUser", "COrg",
|
||||
"WDate", "WHost", "WUser", "WOrg"
|
||||
)
|
||||
select
|
||||
"_VCode", "_PCode", "_IdWorker", coalesce(_TypePersonalOrder,"_IdTypePer"),
|
||||
"_CDate", "_CHost", "_CUser", "_COrg",
|
||||
"_CDate", "_CHost", "_CUser", "_COrg"
|
||||
;
|
||||
else
|
||||
|
||||
"_PCode" := lex."L8_sp_GenCode" ('RP_DocMove', 1);
|
||||
"_VCode" := lex."L8_sp_GenCode" ('RP_WorkerMove', 1);
|
||||
|
||||
INSERT INTO rp."RP_DocMove" ( "VCode", "CDate", "WDate", "CHost", "WHost", "CUser", "WUser", "COrg", "WOrg",
|
||||
"TypeName", "IdTypeCauseCond", /*"NumDoc",*/ "DateDoc", "FlagApp", "IdTypeDocStaff", "Note")
|
||||
select "_PCode", "_CDate", "_CDate", "_CHost", "_CHost", "_CUser", "_CUser", "_COrg", "_COrg",
|
||||
_TypeNamePersonalOrder, null, coalesce("_DateDoc","_CDate"), null, _TypePersonalOrder, null;
|
||||
|
||||
INSERT INTO rp."RP_WorkerMove" ( "VCode", "Pcode", "CDate", "WDate", "CHost", "WHost", "CUser", "WUser", "COrg", "WOrg",
|
||||
"IdWorker", "DateBeg", "IdDepartment", "IdPost", "IdRank", --"IdWorkContract",
|
||||
"IdStaffUnit", "IdTypeBasisDoc", "DateBasis", "Rate", "IdOper1", "SumOper1", "IdTypeWorkSched", "Probation", "WCode")
|
||||
select "_VCode", "_PCode", "_CDate", "_CDate", "_CHost", "_CHost", "_CUser", "_CUser", "_COrg", "_COrg",
|
||||
"_IdWorker", @DateBeg, mm."IdDepartment", mm."IdPost", mm."IdRank",
|
||||
mm."IdStaffUnit", mm."IdTypeBasisDoc", mm."DateBasis", mm."Rate", mm."IdOper1", mm."SumOper1",
|
||||
mm."IdTypeWorkSched", mm."Probation", case when _FlagMove = 1 then mm."PCode" end
|
||||
from (
|
||||
select m.*
|
||||
from rp."RP_DocMove" p
|
||||
join rp."RP_WorkerMove" m on p."VCode" = m."PCode"
|
||||
join comdoc."VRP_TypeDocStaff" s on p."IdTypeDocStaff" = s."VCode"
|
||||
where m."IdWorker" = "_IdWorker" and s."FlagMove" = 1
|
||||
order by "DateBeg" desc
|
||||
limit 1) mm;
|
||||
|
||||
end if;
|
||||
|
||||
update "#tmp_newDocVCode"
|
||||
set "newDocVCode" = "_PCode" ;
|
||||
|
||||
END;
|
||||
$$
|
||||
```
|
Loading…
x
Reference in New Issue
Block a user