Commit 4957dd1c7c23b8629618b85b05c05c4134c28666
1 parent
7afe5c4e
Exists in
master
Redmine #4703 - scripts almox novo modelo
Showing
5 changed files
with
1021 additions
and
481 deletions
Show diff stats
cit-adm-materiais-api/src/main/resources/scripts-bd/Migracao_MPOG/00-AjustesIniciais.sql
... | ... | @@ -89,15 +89,15 @@ |
89 | 89 | ALTER TABLE public.contacontabilmovimento ADD COLUMN bempatrimonial_id BIGINT; -- ** JULIANA |
90 | 90 | ALTER TABLE public.contacontabilmovimento ADD COLUMN transferencia_id BIGINT; -- ** JULIANA |
91 | 91 | ALTER TABLE public.baixa ALTER COLUMN codigo TYPE BIGINT; -- ** HERBERT |
92 | - ALTER TABLE public.requisicaoconsumoitem ADD COLUMN sq_requisicao_item NUMERIC(10,0); -- ** JULIANA (PRECISO DESSE CAMPO PARA FAZER LINK COM O ATENDIMENTO DA REQUISICAO) | |
93 | - ALTER TABLE public.baixaalmoxarifadoitem ADD COLUMN sq_baixa_item CHARACTER VARYING(10); -- ** JULIANA (PRECISO DESSE CAMPO PARA LINKAR A BAIXA ITEM COM O ASI NA HORA DE PEGAR O VALOR NO MOVIMENTOESTOQUE) | |
92 | + ALTER TABLE public.alm_rc_item ADD COLUMN sq_requisicao_item NUMERIC(10,0); -- ** JULIANA (PRECISO DESSE CAMPO PARA FAZER LINK COM O ATENDIMENTO DA REQUISICAO) | |
93 | + ALTER TABLE public.alm_en_entradaitem ADD COLUMN sq_baixa_item CHARACTER VARYING(10); -- ** JULIANA (PRECISO DESSE CAMPO PARA LINKAR A BAIXA ITEM COM O ASI NA HORA DE PEGAR O VALOR NO alm_me_movimentoestoque) | |
94 | 94 | ALTER TABLE public.dominio ALTER COLUMN ispadrao SET DEFAULT FALSE; -- ** HERBERT |
95 | 95 | ALTER TABLE public.localizacao ALTER COLUMN nome TYPE CHARACTER VARYING(250); -- ** HERBERT |
96 | - ALTER TABLE public.entradaalmoxarifadoitem ADD COLUMN CD_CONTA CHARACTER VARYING(15); -- ** JULIANA (PRECISO DESSE CAMPO PARA FALAR A CONTA CONTABIL QUE O MATERIAL PERTENCIA A EPOCA DA ENTRADA | |
97 | - ALTER TABLE public.baixaalmoxarifadoitem ADD COLUMN CD_CONTA CHARACTER VARYING(15); -- ** JULIANA (PRECISO DESSE CAMPO PARA FALAR A CONTA CONTABIL QUE O MATERIAL PERTENCIA A EPOCA DA BAIXA | |
98 | - ALTER TABLE public.devolucaoitem ADD COLUMN CD_CONTA CHARACTER VARYING(15); -- ** JULIANA (PRECISO DESSE CAMPO PARA FALAR A CONTA CONTABIL QUE O MATERIAL PERTENCIA A EPOCA DA devolucao | |
99 | - ALTER TABLE public.requisicaoconsumoitem ADD COLUMN CD_CONTA CHARACTER VARYING(15); -- ** JULIANA (PRECISO DESSE CAMPO PARA FALAR A CONTA CONTABIL QUE O MATERIAL PERTENCIA A EPOCA DA requisicaoconsumo | |
100 | - ALTER TABLE public.atendimentoreqconsumoitem ADD COLUMN VALOR NUMERIC(15,4); -- ** JULIANA (PRECISO DESSE CAMPO PRA SALVAR NO MOVIMENTO ESTOQUE) | |
96 | + ALTER TABLE public.alm_en_entradaitem ADD COLUMN CD_CONTA CHARACTER VARYING(15); -- ** JULIANA (PRECISO DESSE CAMPO PARA FALAR A CONTA CONTABIL QUE O MATERIAL PERTENCIA A EPOCA DA ENTRADA | |
97 | + ALTER TABLE public.alm_bx_item ADD COLUMN CD_CONTA CHARACTER VARYING(15); -- ** JULIANA (PRECISO DESSE CAMPO PARA FALAR A CONTA CONTABIL QUE O MATERIAL PERTENCIA A EPOCA DA BAIXA | |
98 | + ALTER TABLE public.alm_dev_item ADD COLUMN CD_CONTA CHARACTER VARYING(15); -- ** JULIANA (PRECISO DESSE CAMPO PARA FALAR A CONTA CONTABIL QUE O MATERIAL PERTENCIA A EPOCA DA devolucao | |
99 | + ALTER TABLE public.alm_rc_item ADD COLUMN CD_CONTA CHARACTER VARYING(15); -- ** JULIANA (PRECISO DESSE CAMPO PARA FALAR A CONTA CONTABIL QUE O MATERIAL PERTENCIA A EPOCA DA requisicaoconsumo | |
100 | + ALTER TABLE public.alm_rc_atendimentoitem ADD COLUMN VALOR NUMERIC(15,4); -- ** JULIANA (PRECISO DESSE CAMPO PRA SALVAR NO MOVIMENTO ESTOQUE) | |
101 | 101 | |
102 | 102 | -- VERIFICAR SE ESSES INDICES SERARO MANTIDOS NO MODELO |
103 | 103 | CREATE INDEX ix01_entrada_cd ON public.entrada (codigo); |
... | ... | @@ -120,10 +120,10 @@ |
120 | 120 | CREATE INDEX idx02_transfitem_undid ON public.transferenciaitem (unidadeorigem_id); |
121 | 121 | CREATE INDEX idx03_transfitem_bemid ON public.transferenciaitem (bempatrimonial_id); |
122 | 122 | |
123 | - CREATE INDEX ix01_movimentoestoque_material ON public.movimentoestoque (material_id); | |
124 | - CREATE INDEX ix01_movimentoestoque_data ON public.movimentoestoque (datamovimento); | |
125 | - CREATE INDEX ix01_materialestoquesaldo_material ON public.materialestoquesaldo (material_id); | |
126 | - CREATE INDEX ix01_materialestoquesaldo_dataRef ON public.materialestoquesaldo (datareferencia); | |
123 | + CREATE INDEX ix01_movimentoestoque_material ON public.alm_me_movimentoestoque (material_id); | |
124 | + CREATE INDEX ix01_movimentoestoque_data ON public.alm_me_movimentoestoque (datamovimento); | |
125 | + CREATE INDEX ix01_materialestoquesaldo_material ON public.alm_me_saldo (material_id); | |
126 | + CREATE INDEX ix01_materialestoquesaldo_dataRef ON public.alm_me_saldo (datareferencia); | |
127 | 127 | -- #FIM :: ALTERACOES ESPECIFICAS PARA MIGRACAO |
128 | 128 | |
129 | 129 | |
... | ... | @@ -169,15 +169,15 @@ BEGIN; -- #INI :: ACRESCENTANDO DOMINIOS |
169 | 169 | INSERT INTO public.dominio |
170 | 170 | (id, datacriacao, dataedicao, datainativo, version, chave, descricao, nome, codigo, ispadrao) |
171 | 171 | VALUES |
172 | - (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Requisição', 'REQUISICAO', 9, false), | |
173 | - (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Contrato', 'CONTRATO', 10, false), | |
174 | - (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Processo de Baixa', 'PROCESSO_BAIXA', 11, false), | |
175 | - (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Nº Processo', 'NUMERO_PROCESSO', 12, false), | |
176 | - (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Memorando', 'MEMORANDO', 13, false), | |
177 | - (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Portaria', 'PORTARIA', 14, false), | |
178 | - (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Despacho', 'DESPACHO', 15, false), | |
179 | - (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Ocorrência', 'OCORRENCIA', 16, false), | |
180 | - (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Nota de Sistema', 'NOTA_SISTEMA', 17, false); | |
172 | + (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Requisição', 'REQUISICAO', 100, false), | |
173 | + (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Contrato', 'CONTRATO', 101, false), | |
174 | + (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Processo de Baixa', 'PROCESSO_BAIXA', 102, false), | |
175 | + (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Nº Processo', 'NUMERO_PROCESSO', 103, false), | |
176 | + (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Memorando', 'MEMORANDO', 104, false), | |
177 | + (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Portaria', 'PORTARIA', 105, false), | |
178 | + (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Despacho', 'DESPACHO', 106, false), | |
179 | + (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Ocorrência', 'OCORRENCIA', 107, false), | |
180 | + (NEXTVAL('hibernate_sequence'), LOCALTIMESTAMP, LOCALTIMESTAMP, NULL, 0, 'tipoDocumento', 'Nota de Sistema', 'NOTA_SISTEMA', 108, false); | |
181 | 181 | |
182 | 182 | --> ACRESCENTA TIPOINVENTARIO |
183 | 183 | INSERT INTO public.dominio | ... | ... |
cit-adm-materiais-api/src/main/resources/scripts-bd/Migracao_MPOG/02-EstruturaOrganizacional.sql
... | ... | @@ -4,15 +4,18 @@ |
4 | 4 | |
5 | 5 | BEGIN; -- #INI :: INICIALIZA AS TABELAS |
6 | 6 | DELETE FROM public.seguranca_usuario_privilegio; |
7 | - DELETE FROM public.usuarioorganizacaoitem; | |
7 | + DELETE FROM public.usuarioorganizacaoitem; | |
8 | + DELETE FROM GRUPOUSUARIO; | |
9 | + DELETE FROM GRUPO; | |
8 | 10 | DELETE FROM public.seguranca_usuario; |
9 | 11 | DELETE FROM public.configuracaoparametrosistema; |
10 | 12 | DELETE FROM public.configuracao; |
13 | + DELETE FROM estruturaorganizacionalpatrim; | |
11 | 14 | DELETE FROM public.estruturaorganizacional; |
12 | 15 | DELETE FROM public.localizacao; |
13 | - DELETE FROM public.organizacao; | |
14 | - DELETE FROM public.centrocusto; | |
15 | 16 | DELETE FROM public.contacontabil; |
17 | + DELETE FROM public.centrocusto; | |
18 | + DELETE FROM public.organizacao; | |
16 | 19 | UPDATE public.menu SET editor_id = NULL; |
17 | 20 | COMMIT; -- #FIM :: INICIALIZA AS TABELAS |
18 | 21 | |
... | ... | @@ -428,8 +431,8 @@ BEGIN; -- #INI :: REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONAL |
428 | 431 | COMMIT; -- #FIM :: REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONALPATRIM |
429 | 432 | |
430 | 433 | |
431 | -BEGIN; -- #INI :: REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONALALMOX | |
432 | - INSERT INTO public.estruturaorganizacionalalmox | |
434 | +BEGIN; -- #INI :: REPLICACAO ESTRUTURAORGANIZACIONAL >> alm_eo_almoxarifado | |
435 | + INSERT INTO public.alm_eo_almoxarifado | |
433 | 436 | ( id |
434 | 437 | , databloqueio |
435 | 438 | , datainativo |
... | ... | @@ -462,12 +465,12 @@ BEGIN; -- #INI :: REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONAL |
462 | 465 | -- TOTALIZADORES |
463 | 466 | DO $$ DECLARE |
464 | 467 | BEGIN |
465 | - RAISE NOTICE 'REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONALALMOX'; | |
468 | + RAISE NOTICE 'REPLICACAO ESTRUTURAORGANIZACIONAL >> alm_eo_almoxarifado'; | |
466 | 469 | RAISE NOTICE 'Total de registros do EO (%)', (SELECT COUNT(*) FROM PUBLIC.ESTRUTURAORGANIZACIONAL); |
467 | - RAISE NOTICE 'Total de registros no EOA (%)', (SELECT COUNT(*) FROM PUBLIC.ESTRUTURAORGANIZACIONALALMOX); | |
470 | + RAISE NOTICE 'Total de registros no EOA (%)', (SELECT COUNT(*) FROM PUBLIC.alm_eo_almoxarifado); | |
468 | 471 | RAISE NOTICE ' '; |
469 | 472 | END$$; |
470 | -COMMIT; -- #FIM :: REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONALALMOX | |
473 | +COMMIT; -- #FIM :: REPLICACAO ESTRUTURAORGANIZACIONAL >> alm_eo_almoxarifado | |
471 | 474 | |
472 | 475 | |
473 | 476 | BEGIN; -- #INI :: AJUSTAR PARENT_ID COM BASE NO CD_UA_SUP IMPORTADO PARA CLASSIFICACAO |
... | ... | @@ -498,16 +501,16 @@ COMMIT; -- #FIM :: PRECISEI JOGAR 1 NO CODIGO DAS URS POR QUE URS TINHAM CODIGOS |
498 | 501 | |
499 | 502 | |
500 | 503 | BEGIN; -- #INI :: AJUSTAR CENTROCUSTO_ID COM BASE NO CD_CENTRO_CUSTO DA UNIDADE REQUISITANTE |
501 | - UPDATE public.estruturaorganizacionalalmox | |
504 | + UPDATE public.alm_eo_almoxarifado | |
502 | 505 | SET centrocusto_id = und_requisitante.cc_id |
503 | 506 | FROM |
504 | 507 | ( SELECT E.ID AS EO_ID, CC.ID AS CC_ID |
505 | 508 | FROM ASIWEB.AX_UR UR |
506 | 509 | INNER JOIN PUBLIC.ESTRUTURAORGANIZACIONAL E ON (E.CODIGO = UR.CD_UR||'1') |
507 | - INNER JOIN PUBLIC.ESTRUTURAORGANIZACIONALALMOX EA ON (EA.ESTRUTURAORGANIZACIONAL_ID = E.ID AND EA.ISUNDCONSUMIDORAREQUISITANTE) | |
510 | + INNER JOIN PUBLIC.alm_eo_almoxarifado EA ON (EA.ESTRUTURAORGANIZACIONAL_ID = E.ID AND EA.ISUNDCONSUMIDORAREQUISITANTE) | |
508 | 511 | INNER JOIN PUBLIC.CENTROCUSTO CC ON (CC.CODIGO = UR.CD_CENTRO_CUSTO) |
509 | 512 | ) AS und_requisitante |
510 | - WHERE public.estruturaorganizacionalalmox.estruturaorganizacional_id = und_requisitante.eo_id; | |
513 | + WHERE public.alm_eo_almoxarifado.estruturaorganizacional_id = und_requisitante.eo_id; | |
511 | 514 | COMMIT; -- #FIM :: AJUSTAR CENTROCUSTO_ID COM BASE NO CD_CENTRO_CUSTO DA UNIDADE REQUISITANTE |
512 | 515 | |
513 | 516 | ... | ... |
cit-adm-materiais-api/src/main/resources/scripts-bd/Migracao_MPOG/03-TabelasApoio.sql
... | ... | @@ -1797,7 +1797,7 @@ BEGIN; -- #INI :: IMPORTACAO MATERIAIS >> MATERIAL |
1797 | 1797 | |
1798 | 1798 | |
1799 | 1799 | --> MATERIAIS :: BEM SERVICO :: MATERIALCONSUMO |
1800 | - INSERT INTO public.materialconsumo | |
1800 | + INSERT INTO public.alm_materialconsumo | |
1801 | 1801 | ( elementodespesa |
1802 | 1802 | , id |
1803 | 1803 | , unidadearmazenamento_id |
... | ... | @@ -1813,8 +1813,8 @@ BEGIN; -- #INI :: IMPORTACAO MATERIAIS >> MATERIAL |
1813 | 1813 | ORDER BY B.ID_BEM_SERVICO; |
1814 | 1814 | |
1815 | 1815 | |
1816 | - --> MATERIAIS :: CARGA UNIDADE MEDIDA ENTRADA :: MATCONSUMOTIPOUNIDADEENTRADA | |
1817 | - INSERT INTO public.matconsumotipounidadeentrada | |
1816 | + --> MATERIAIS :: CARGA UNIDADE MEDIDA ENTRADA :: alm_mc_unidmedidaentrada | |
1817 | + INSERT INTO public.alm_mc_unidmedidaentrada | |
1818 | 1818 | ( id |
1819 | 1819 | , databloqueio |
1820 | 1820 | , datainativo |
... | ... | @@ -1833,7 +1833,7 @@ BEGIN; -- #INI :: IMPORTACAO MATERIAIS >> MATERIAL |
1833 | 1833 | FROM ASIWEB.CR_BEM_SERVICO B |
1834 | 1834 | INNER JOIN ASIWEB.CR_BEM_GENERICO C ON C.CD_BEM_GENERICO=B.CD_BEM_GENERICO |
1835 | 1835 | INNER JOIN PUBLIC.MATERIAL M ON M.CODIGO=B.CD_BEM_SERVICO |
1836 | - INNER JOIN PUBLIC.MATERIALCONSUMO MC ON MC.ID=M.ID | |
1836 | + INNER JOIN PUBLIC.alm_materialconsumo MC ON MC.ID=M.ID | |
1837 | 1837 | INNER JOIN PUBLIC.UNIDADEMEDIDA U ON U.CODIGO=B.CD_UM_ELEMENTAR |
1838 | 1838 | WHERE C.CD_TIPO_BS IN ('C','S') -- REVER MODELO PARA CONTEMPLAR 'SERVICO' TAMBEM |
1839 | 1839 | ORDER BY B.ID_BEM_SERVICO; |
... | ... | @@ -1892,7 +1892,7 @@ BEGIN; -- #INI :: IMPORTACAO MATERIAIS >> MATERIAL |
1892 | 1892 | |
1893 | 1893 | |
1894 | 1894 | --> MATERIAIS :: BEM SERVICO :: MATERIALPERMANENTE |
1895 | - INSERT INTO public.materialpermanenteconsumo | |
1895 | + INSERT INTO public.mat_matpermanenteconsumo | |
1896 | 1896 | ( id |
1897 | 1897 | , databloqueio |
1898 | 1898 | , datainativo |
... | ... | @@ -1920,7 +1920,7 @@ BEGIN; -- #INI :: IMPORTACAO MATERIAIS >> MATERIAL |
1920 | 1920 | INNER JOIN ASIWEB.CR_BEM_SERVICO B ON B.CD_BEM_SERVICO=S.CD_BEM_SERVICO_PRI |
1921 | 1921 | INNER JOIN PUBLIC.MATERIAL M ON M.CODIGO=B.CD_BEM_SERVICO |
1922 | 1922 | INNER JOIN PUBLIC.MATERIALPERMANENTE MP ON MP.ID=M.ID |
1923 | - INNER JOIN PUBLIC.MATERIALCONSUMO MC ON MC.ID=M.ID | |
1923 | + INNER JOIN PUBLIC.alm_materialconsumo MC ON MC.ID=M.ID | |
1924 | 1924 | ORDER BY B.ID_BEM_SERVICO; |
1925 | 1925 | COMMIT; -- #FIM :: IMPORTACAO MATERIAIS >> MATERIAL |
1926 | 1926 | ... | ... |
cit-adm-materiais-api/src/main/resources/scripts-bd/Migracao_MPOG/04-Patrimonio.sql
... | ... | @@ -584,7 +584,7 @@ COMMIT; -- #FIM :: ATRIBUINDO DETENTOR AOS BENS QUE POSSUEM DETENTOR ATRIBUIDO |
584 | 584 | -- #FIM :: MIGRACAO DOS VALORES DAS CARACTERISTICAS ESPECIFICAS DOS BENS |
585 | 585 | |
586 | 586 | |
587 | -BEGIN; -- #INI :: AJUSTA ATRIBUTOS 'ISLOCALIZADORADEBENS'/'ISALMOXARIFADO'/'ISUNDCONSUMIDORAREQUISITANTE' | |
587 | +BEGIN; -- #INI :: AJUSTA ATRIBUTOS 'ISLOCALIZADORADEBENS'/'ISALMOXARIFADO' | |
588 | 588 | DO $$ BEGIN RAISE NOTICE 'Marca as unidades como LOCALIZADORAS se existir bens...'; END;$$; |
589 | 589 | UPDATE ESTRUTURAORGANIZACIONALPATRIM |
590 | 590 | SET ISLOCALIZADORADEBEM=TRUE |
... | ... | @@ -596,17 +596,6 @@ BEGIN; -- #INI :: AJUSTA ATRIBUTOS 'ISLOCALIZADORADEBENS'/'ISALMOXARIFADO'/'ISU |
596 | 596 | ) AS B |
597 | 597 | WHERE B.UNIDADEATUAL_ID=ESTRUTURAORGANIZACIONAL_ID |
598 | 598 | AND B.QTD > 0; |
599 | - | |
600 | - DO $$ BEGIN RAISE NOTICE 'Marca as unidades como ALMOXARIFADO (ALM) se foi informada na entrada de bens...'; END;$$; | |
601 | - UPDATE PUBLIC.ESTRUTURAORGANIZACIONALALMOX | |
602 | - SET ISALMOXARIFADO = TRUE | |
603 | - FROM | |
604 | - ( SELECT EO.ID AS ALM_ID | |
605 | - FROM PUBLIC.ESTRUTURAORGANIZACIONAL EO | |
606 | - WHERE EO.DATAFIM IS NULL | |
607 | - AND EO.ID IN (SELECT DISTINCT(UNIDADECOMPRA_ID) FROM PUBLIC.BEMPATRIMONIAL) | |
608 | - ) AS B | |
609 | - WHERE ESTRUTURAORGANIZACIONAL_ID=B.ALM_ID; | |
610 | 599 | |
611 | 600 | DO $$ BEGIN RAISE NOTICE 'Marca as unidades como ALMOXARIFADO (ALM) se foi informada na entrada de bens...'; END;$$; |
612 | 601 | UPDATE PUBLIC.ESTRUTURAORGANIZACIONALPATRIM |
... | ... | @@ -618,22 +607,13 @@ BEGIN; -- #INI :: AJUSTA ATRIBUTOS 'ISLOCALIZADORADEBENS'/'ISALMOXARIFADO'/'ISU |
618 | 607 | AND EO.ID IN (SELECT DISTINCT(UNIDADECOMPRA_ID) FROM PUBLIC.BEMPATRIMONIAL) |
619 | 608 | ) AS B |
620 | 609 | WHERE ESTRUTURAORGANIZACIONAL_ID=B.ALM_ID; |
621 | - | |
622 | - DO $$ BEGIN RAISE NOTICE 'Marca as unidades requisitantes (sem ul correspondente) como requisitantes...'; END;$$; | |
623 | - UPDATE ESTRUTURAORGANIZACIONALALMOX | |
624 | - SET ISUNDCONSUMIDORAREQUISITANTE=TRUE | |
625 | - FROM | |
626 | - ( SELECT UR.ID FROM PUBLIC.ESTRUTURAORGANIZACIONAL UR | |
627 | - INNER JOIN PUBLIC.DOMINIO D ON UR.TIPOESTRUTURAORGANIZACIONAL_ID = D.ID AND D.CHAVE = 'tipoEstruturaOrganizacional' AND D.CODIGO=4 | |
628 | - ) AS U | |
629 | - WHERE U.ID = ESTRUTURAORGANIZACIONAL_ID; | |
630 | 610 | |
631 | 611 | --> ATUALIZANDO AS UNIDADES ALMOXARIFADO E ALMOXARIFADO PADRÃO |
632 | 612 | DO $$ BEGIN RAISE NOTICE 'Marca as unidades requisitantes (sem ul correspondente) como requisitantes...'; END;$$; |
633 | 613 | UPDATE PUBLIC.ESTRUTURAORGANIZACIONALPATRIM |
634 | 614 | SET ISALMOXARIFADOPADRAO = ISALMOXARIFADO |
635 | 615 | WHERE ISALMOXARIFADOPADRAO IS NULL; |
636 | -COMMIT; -- #FIM :: AJUSTA ATRIBUTOS 'ISLOCALIZADORADEBENS'/'ISALMOXARIFADO'/'ISUNDCONSUMIDORAREQUISITANTE | |
616 | +COMMIT; -- #FIM :: AJUSTA ATRIBUTOS 'ISLOCALIZADORADEBENS'/'ISALMOXARIFADO' | |
637 | 617 | |
638 | 618 | |
639 | 619 | BEGIN; -- #INI :: AJUSTES PARA SETAR OS BENS PRINCIPAIS COMO PRINCIPAIS | ... | ... |
cit-adm-materiais-api/src/main/resources/scripts-bd/Migracao_MPOG/05-Almoxarifado.sql
... | ... | @@ -2,258 +2,188 @@ |
2 | 2 | -- ##INI :: IMPORTACAO TABELAS DE MOVIMENTO DE MATERIAS DE CONSUMO -- |
3 | 3 | --===========================================================================-- |
4 | 4 | |
5 | ---####################################################################################################################################### | |
6 | ---############# SO PRECISA SER RODADO QUANDO FOR REFEITA A MIGRACAO SOMENTE DO ALMOXARIFADO ############################################# | |
7 | ---####################################################################################################################################### | |
8 | --- #INI :: AJUSTAR URS POIS UMA ESTAVA DUPLICADA | |
5 | +BEGIN; -- #INI :: AJUSTA ATRIBUTOS 'ISALMOXARIFADO'/'ISUNDCONSUMIDORAREQUISITANTE' | |
6 | + | |
7 | + DO $$ BEGIN RAISE NOTICE 'Marca as unidades como ALMOXARIFADO (ALM) se foi informada na entrada de bens...'; END;$$; | |
8 | + UPDATE PUBLIC.alm_eo_almoxarifado | |
9 | + SET ISALMOXARIFADO = TRUE | |
10 | + FROM | |
11 | + ( SELECT EO.ID AS ALM_ID | |
12 | + FROM PUBLIC.ESTRUTURAORGANIZACIONAL EO | |
13 | + WHERE EO.DATAFIM IS NULL | |
14 | + AND EO.codigo IN (SELECT DISTINCT(cd_ul_entrada) FROM ASIWEB.BP_BEM) | |
15 | + ) AS B | |
16 | + WHERE ESTRUTURAORGANIZACIONAL_ID=B.ALM_ID; | |
17 | + | |
18 | + DO $$ BEGIN RAISE NOTICE 'Marca as unidades requisitantes (sem ul correspondente) como requisitantes...'; END;$$; | |
19 | + UPDATE alm_eo_almoxarifado | |
20 | + SET ISUNDCONSUMIDORAREQUISITANTE=TRUE | |
21 | + FROM | |
22 | + ( SELECT UR.ID FROM PUBLIC.ESTRUTURAORGANIZACIONAL UR | |
23 | + INNER JOIN PUBLIC.DOMINIO D ON UR.TIPOESTRUTURAORGANIZACIONAL_ID = D.ID AND D.CHAVE = 'tipoEstruturaOrganizacional' AND D.CODIGO=4 | |
24 | + ) AS U | |
25 | + WHERE U.ID = ESTRUTURAORGANIZACIONAL_ID; | |
26 | + | |
27 | +COMMIT; -- #FIM :: AJUSTA ATRIBUTOS 'ISALMOXARIFADO'/'ISUNDCONSUMIDORAREQUISITANTE | |
28 | + | |
29 | +BEGIN; -- #INI :: DEFINE AS UNIDADES ALMOXARIFADO DO ORGAO >> ALM_ESTOQUE (novo) | |
30 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros de estoque'; END;$$; | |
31 | + | |
32 | + INSERT INTO public.ALM_ESTOQUE | |
33 | + ( id | |
34 | + , databloqueio | |
35 | + , datainativo | |
36 | + , datacriacao | |
37 | + , dataedicao | |
38 | + , version | |
39 | + , inativador_id | |
40 | + , autor_id | |
41 | + , editor_id | |
42 | + , organizacao_id | |
43 | + , almoxarifado_id | |
44 | + ) | |
45 | + SELECT (ROW_NUMBER() OVER (ORDER BY EA.ESTRUTURAORGANIZACIONAL_ID)) + M.MAX AS id | |
46 | + , NULL AS databloqueio | |
47 | + , NULL AS datainativo | |
48 | + , LOCALTIMESTAMP AS datacriacao | |
49 | + , LOCALTIMESTAMP AS dataedicao | |
50 | + , 0 AS "version" | |
51 | + , NULL AS inativador_id | |
52 | + , NULL AS autor_id | |
53 | + , NULL AS editor_id | |
54 | + , 1 AS organizacao_id | |
55 | + , EA.ESTRUTURAORGANIZACIONAL_ID AS almoxarifado_id | |
56 | + FROM alm_eo_almoxarifado EA | |
57 | + JOIN (SELECT COALESCE(MAX(ID),0) AS MAX FROM PUBLIC.ALM_ESTOQUE) M ON 1=1 | |
58 | + WHERE EA.ISALMOXARIFADO IS TRUE; | |
59 | +COMMIT; -- #FIM :: DEFINE AS UNIDADES ALMOXARIFADO DO ORGAO >> ALM_ESTOQUE | |
60 | + | |
61 | +--Script para migrar endereço de estoque | |
9 | 62 | BEGIN; |
10 | - delete from estruturaorganizacionalalmox ea where ea.estruturaorganizacional_id in (select id from estruturaorganizacional e where e.tipoestruturaorganizacional_id = (select id from dominio where chave = 'tipoEstruturaOrganizacional' and codigo = 4)); | |
11 | - delete from estruturaorganizacionalpatrim ep where ep.estruturaorganizacional_id in (select id from estruturaorganizacional e where e.tipoestruturaorganizacional_id = (select id from dominio where chave = 'tipoEstruturaOrganizacional' and codigo = 4)); | |
12 | - delete from estruturaorganizacional where tipoestruturaorganizacional_id = (select id from dominio where chave = 'tipoEstruturaOrganizacional' and codigo = 4); | |
13 | - | |
14 | - BEGIN; -- #INI :: IMPORTACAO UNIDADE REQUISITANTE >> ESTRUTURAORGANIZACIONAL | |
15 | - /* | |
16 | - - Conceito diferente de UG/UA/UL | |
17 | - - Unidades Requisitantes com mesma UA e mesmo LOCAL que a UL, não serão criadas | |
18 | - - Estamos considerando somente as Unidades Requisitantes que não possuem correspondente com UL | |
19 | - */ | |
20 | - INSERT INTO public.estruturaorganizacional | |
21 | - ( id | |
22 | - , databloqueio | |
23 | - , datainativo | |
24 | - , datacriacao | |
25 | - , dataedicao | |
26 | - , version | |
27 | - , classificacao | |
28 | - , codigo | |
29 | - , datafim | |
30 | - , datainicio | |
31 | - , nome | |
32 | - , sigla | |
33 | - , inativador_id | |
34 | - , autor_id | |
35 | - , editor_id | |
36 | - , organizacao_id | |
37 | - , tipoestruturaorganizacional_id | |
38 | - , unidadesuperior_id | |
39 | - , localizacao_id | |
40 | - , unidadegestora_id | |
41 | - ) | |
42 | - SELECT NEXTVAL('hibernate_sequence') AS id | |
43 | - , UR.DT_BLOQUEIO AS databloqueio | |
44 | - , NULL AS datainativo | |
45 | - , LOCALTIMESTAMP AS datacriacao | |
46 | - , LOCALTIMESTAMP AS dataedicao | |
47 | - , 0 AS "version" | |
48 | - , UR.CD_UA AS classificacao | |
49 | - , UR.CD_UR||'1' AS codigo | |
50 | - , UR.DT_BLOQUEIO AS datafim | |
51 | - , COALESCE(UR.DT_BLOQUEIO,LOCALTIMESTAMP) AS datainicio | |
52 | - , UR.NM_UR AS nome | |
53 | - , CASE WHEN UR.SG_UR IS NULL THEN 'SG' ELSE UR.SG_UR END AS sigla | |
54 | - , NULL AS inativador_id | |
55 | - , NULL AS autor_id | |
56 | - , NULL AS editor_id | |
57 | - , 1 AS organizacao_id | |
58 | - , (SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE='tipoEstruturaOrganizacional' AND CODIGO=4) AS tipoestruturaorganizacional_id -- 1;"Unidade gestora"; 2;"Unidade administrativa"; 3;"Unidade localizadora"; 4;"Unidade requisitante" | |
59 | - , UA.ID AS unidadesuperior_id | |
60 | - , L.ID AS localizacao_id | |
61 | - , UA.UNIDADEGESTORA_ID AS unidadegestora_id | |
62 | - FROM ASIWEB.AX_UR UR | |
63 | - INNER JOIN PUBLIC.ESTRUTURAORGANIZACIONAL UA ON (UA.CODIGO = UR.CD_UA and UA.tipoestruturaorganizacional_id = (SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE='tipoEstruturaOrganizacional' AND CODIGO=2)) | |
64 | - INNER JOIN PUBLIC.LOCALIZACAO L ON L.CODIGO = UR.CD_LOCAL | |
65 | - ORDER BY UR.ID_UR; | |
66 | - | |
67 | - -- TOTALIZADORES | |
68 | - DO $$ DECLARE | |
69 | - BEGIN | |
70 | - RAISE NOTICE 'IMPORTACAO UNIDADE REQUISITANTE >> ESTRUTURAORGANIZACIONAL'; | |
71 | - RAISE NOTICE 'Total de registros do ASI (%)', (SELECT COUNT(*) FROM ASIWEB.AX_UR); | |
72 | - RAISE NOTICE 'Total de registros no GRP (%)', (SELECT COUNT(*) FROM PUBLIC.ESTRUTURAORGANIZACIONAL WHERE TIPOESTRUTURAORGANIZACIONAL_ID = (SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE='tipoEstruturaOrganizacional' AND CODIGO=4)); | |
73 | - RAISE NOTICE ' '; | |
74 | - END$$; | |
75 | - COMMIT; -- #FIM :: IMPORTACAO UNIDADE REQUISITANTE >> ESTRUTURAORGANIZACIONAL | |
76 | - | |
77 | - | |
78 | - BEGIN; -- #INI :: REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONALPATRIM | |
79 | - INSERT INTO public.estruturaorganizacionalpatrim | |
80 | - ( id | |
81 | - , databloqueio | |
82 | - , datainativo | |
83 | - , datacriacao | |
84 | - , dataedicao | |
85 | - , version | |
86 | - , isalmoxarifado | |
87 | - , islocalizadoradebem | |
88 | - , inativador_id | |
89 | - , autor_id | |
90 | - , editor_id | |
91 | - , estruturaorganizacional_id | |
92 | - ) | |
93 | - SELECT NEXTVAL('hibernate_sequence') | |
94 | - , NULL AS databloqueio | |
95 | - , NULL AS datainativo | |
96 | - , LOCALTIMESTAMP AS datacriacao | |
97 | - , LOCALTIMESTAMP AS dataedicao | |
98 | - , 0 AS version | |
99 | - , FALSE AS isalmoxarifado | |
100 | - , FALSE AS islocalizadoradebem | |
101 | - , NULL AS inativador_id | |
102 | - , NULL AS autor_id | |
103 | - , NULL AS editor_id | |
104 | - , E.ID AS estruturaorganizacional_id | |
105 | - FROM ESTRUTURAORGANIZACIONAL E | |
106 | - where tipoestruturaorganizacional_id = (select id from dominio where chave = 'tipoEstruturaOrganizacional' and codigo = 4); | |
107 | - | |
108 | - -- TOTALIZADORES | |
109 | - DO $$ DECLARE | |
110 | - BEGIN | |
111 | - RAISE NOTICE 'REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONALPATRIM'; | |
112 | - RAISE NOTICE 'Total de registros do EO (%)', (SELECT COUNT(*) FROM PUBLIC.ESTRUTURAORGANIZACIONAL); | |
113 | - RAISE NOTICE 'Total de registros no EOP (%)', (SELECT COUNT(*) FROM PUBLIC.ESTRUTURAORGANIZACIONALPATRIM); | |
114 | - RAISE NOTICE ' '; | |
115 | - END$$; | |
116 | - COMMIT; -- #FIM :: REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONALPATRIM | |
117 | - | |
118 | - | |
119 | - BEGIN; -- #INI :: REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONALALMOX | |
120 | - INSERT INTO public.estruturaorganizacionalalmox | |
121 | - ( id | |
122 | - , databloqueio | |
123 | - , datainativo | |
124 | - , datacriacao | |
125 | - , dataedicao | |
126 | - , version | |
127 | - , diasrequisicao | |
128 | - , isalmoxarifado | |
129 | - , isundconsumidorarequisitante | |
130 | - , inativador_id | |
131 | - , autor_id | |
132 | - , editor_id | |
133 | - , estruturaorganizacional_id | |
134 | - ) | |
135 | - SELECT NEXTVAL('hibernate_sequence') | |
136 | - , NULL AS databloqueio | |
137 | - , NULL AS datainativo | |
138 | - , LOCALTIMESTAMP AS datacriacao | |
139 | - , LOCALTIMESTAMP AS dataedicao | |
140 | - , 0 AS version | |
141 | - , NULL AS diasrequisicao | |
142 | - , FALSE AS isalmoxarifado | |
143 | - , FALSE AS isundconsumidorarequisitante | |
144 | - , NULL AS inativador_id | |
145 | - , NULL AS autor_id | |
146 | - , NULL AS editor_id | |
147 | - , E.ID AS estruturaorganizacional_id | |
148 | - FROM ESTRUTURAORGANIZACIONAL E | |
149 | - where tipoestruturaorganizacional_id = (select id from dominio where chave = 'tipoEstruturaOrganizacional' and codigo = 4); | |
150 | - | |
151 | - -- TOTALIZADORES | |
152 | - DO $$ DECLARE | |
153 | - BEGIN | |
154 | - RAISE NOTICE 'REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONALALMOX'; | |
155 | - RAISE NOTICE 'Total de registros do EO (%)', (SELECT COUNT(*) FROM PUBLIC.ESTRUTURAORGANIZACIONAL); | |
156 | - RAISE NOTICE 'Total de registros no EOA (%)', (SELECT COUNT(*) FROM PUBLIC.ESTRUTURAORGANIZACIONALALMOX); | |
157 | - RAISE NOTICE ' '; | |
158 | - END$$; | |
159 | - COMMIT; -- #FIM :: REPLICACAO ESTRUTURAORGANIZACIONAL >> ESTRUTURAORGANIZACIONALALMOX | |
160 | - | |
161 | - | |
162 | - BEGIN; -- #INI :: AJUSTAR PARENT_ID COM BASE NO CD_UA_SUP IMPORTADO PARA CLASSIFICACAO | |
163 | - UPDATE public.estruturaorganizacional | |
164 | - SET unidadesuperior_id = ep.parent_id | |
165 | - FROM | |
166 | - ( SELECT f.id, p.id AS parent_id | |
167 | - FROM public.estruturaorganizacional p INNER JOIN | |
168 | - public.estruturaorganizacional f ON f.classificacao = p.codigo | |
169 | - ) AS ep | |
170 | - WHERE public.estruturaorganizacional.id = ep.id | |
171 | - AND public.estruturaorganizacional.id <> 1; | |
172 | - COMMIT; -- #FIM :: AJUSTAR PARENT_ID COM BASE NO CD_UA_SUP IMPORTADO PARA CLASSIFICACAO | |
173 | - | |
174 | - | |
175 | - BEGIN; -- #INI :: JOGANDO O CODIGO NA CLASSIFICACAO PARA FACILICAR A BUSCA PARA USUARIO | |
176 | - /* | |
177 | - * Alinhado com área de negócios de fazer esse update para jogar o código da classifição | |
178 | - * sem o 1 para o usuário poder buscar pelo código antigo. | |
179 | - */ | |
180 | - UPDATE public.estruturaorganizacional | |
181 | - SET classificacao = SUBSTRING(codigo FROM 0 FOR 5) | |
182 | - WHERE tipoestruturaorganizacional_id = | |
183 | - ( SELECT ID FROM PUBLIC.DOMINIO | |
184 | - WHERE CHAVE='tipoEstruturaOrganizacional' | |
185 | - AND CODIGO=4 ); | |
186 | - COMMIT; -- #FIM :: JOGANDO O CODIGO NA CLASSIFICACAO PARA FACILICAR A BUSCA PARA USUARIO | |
187 | - | |
188 | - | |
189 | - BEGIN; -- #INI :: AJUSTAR CENTROCUSTO_ID COM BASE NO CD_CENTRO_CUSTO DA UNIDADE REQUISITANTE | |
190 | - UPDATE public.estruturaorganizacionalalmox | |
191 | - SET centrocusto_id = und_requisitante.cc_id | |
192 | - FROM | |
193 | - ( SELECT E.ID AS EO_ID, CC.ID AS CC_ID | |
194 | - FROM ASIWEB.AX_UR UR | |
195 | - INNER JOIN PUBLIC.ESTRUTURAORGANIZACIONAL E ON (E.CODIGO = UR.CD_UR||'1') | |
196 | - INNER JOIN PUBLIC.ESTRUTURAORGANIZACIONALALMOX EA ON (EA.ESTRUTURAORGANIZACIONAL_ID = E.ID AND EA.ISUNDCONSUMIDORAREQUISITANTE) | |
197 | - INNER JOIN PUBLIC.CENTROCUSTO CC ON (CC.CODIGO = UR.CD_CENTRO_CUSTO) | |
198 | - ) AS und_requisitante | |
199 | - WHERE public.estruturaorganizacionalalmox.estruturaorganizacional_id = und_requisitante.eo_id; | |
200 | - COMMIT; -- #FIM :: AJUSTAR CENTROCUSTO_ID COM BASE NO CD_CENTRO_CUSTO DA UNIDADE REQUISITANTE | |
63 | + ALTER TABLE PUBLIC.ALM_ES_ENDERECOESTOQUE | |
64 | + ADD COLUMN END_SUP CHARACTER VARYING(10); | |
65 | + | |
66 | + INSERT INTO public.alm_es_enderecoestoque | |
67 | + ( id | |
68 | + , databloqueio | |
69 | + , datacriacao | |
70 | + , dataedicao | |
71 | + , version | |
72 | + , acomodamaterial | |
73 | + , codigo | |
74 | + , descricao | |
75 | + , endertodomaterial | |
76 | + , sigla | |
77 | + , organizacao_id | |
78 | + , endeestoqsuperior_id | |
79 | + , estoque_id | |
80 | + , estoqueinativo_id | |
81 | + , END_SUP | |
82 | + ) | |
83 | + SELECT | |
84 | + NEXTVAL('hibernate_sequence') AS id | |
85 | + , NULL AS DATABLOQUEIO | |
86 | + , LOCALTIMESTAMP AS DATACRIACAO | |
87 | + , LOCALTIMESTAMP AS DATAEDICAO | |
88 | + , 0 AS VERSION | |
89 | + , (CASE WHEN E.ID_ULT_NIVEL = 'S' THEN TRUE ELSE FALSE END) AS ACOMODAMATERIAL | |
90 | + , E.CD_ENDERECO AS CODIGO | |
91 | + , E.DS_COMPLETA AS DESCRICAO | |
92 | + , FALSE AS ENDERTODOMATERIAL | |
93 | + , E.SG_ENDERECO_EST AS SIGLA | |
94 | + , 1 AS ORGANIZACAO_ID | |
95 | + , NULL AS ENDESTOQSUPERIOR_ID | |
96 | + , (SELECT ID FROM PUBLIC.ALM_ESTOQUE WHERE ALMOXARIFADO_ID =(SELECT ESTRUTURAORGANIZACIONAL_ID FROM PUBLIC.alm_eo_almoxarifado WHERE ISALMOXARIFADO IS TRUE LIMIT 1)) AS ESTOQUE_ID | |
97 | + , NULL | |
98 | + , CD_ENDERECO_S | |
99 | + FROM ASIWEB.CR_ENDERECO_EST E; | |
100 | + | |
101 | + UPDATE PUBLIC.ALM_ES_ENDERECOESTOQUE E | |
102 | + SET ENDEESTOQSUPERIOR_ID = (SELECT ID FROM ALM_ES_ENDERECOESTOQUE WHERE CODIGO = E.CODIGO) | |
103 | + WHERE E.END_SUP IS NOT NULL; | |
201 | 104 | |
202 | - BEGIN; -- #INI :: AJUSTA ATRIBUTOS 'ISLOCALIZADORADEBENS'/'ISALMOXARIFADO'/'ISUNDCONSUMIDORAREQUISITANTE' | |
203 | - DO $$ BEGIN RAISE NOTICE 'Marca as unidades como LOCALIZADORAS se existir bens...'; END;$$; | |
204 | - UPDATE ESTRUTURAORGANIZACIONALPATRIM | |
205 | - SET ISLOCALIZADORADEBEM=TRUE | |
206 | - FROM | |
207 | - ( SELECT BP.UNIDADEATUAL_ID, COUNT(*) AS QTD | |
208 | - FROM BEMPATRIMONIAL BP -- VERIFICA SE A ESTRUTURA POSSUI BENS NÃO BAIXADOS | |
209 | - WHERE BP.DOMINIOSTATUS_ID <> (SELECT ID FROM DOMINIO WHERE CHAVE='tipoStatusBem' AND CODIGO=2) -- BAIXADO | |
210 | - GROUP BY BP.UNIDADEATUAL_ID | |
211 | - ) AS B | |
212 | - WHERE B.UNIDADEATUAL_ID=ESTRUTURAORGANIZACIONAL_ID | |
213 | - AND B.QTD > 0; | |
214 | - | |
215 | - DO $$ BEGIN RAISE NOTICE 'Marca as unidades como ALMOXARIFADO (ALM) se foi informada na entrada de bens...'; END;$$; | |
216 | - UPDATE PUBLIC.ESTRUTURAORGANIZACIONALALMOX | |
217 | - SET ISALMOXARIFADO = TRUE | |
218 | - FROM | |
219 | - ( SELECT EO.ID AS ALM_ID | |
220 | - FROM PUBLIC.ESTRUTURAORGANIZACIONAL EO | |
221 | - WHERE EO.DATAFIM IS NULL | |
222 | - AND EO.ID IN (SELECT DISTINCT(UNIDADECOMPRA_ID) FROM PUBLIC.BEMPATRIMONIAL) | |
223 | - ) AS B | |
224 | - WHERE ESTRUTURAORGANIZACIONAL_ID=B.ALM_ID; | |
225 | - | |
226 | - DO $$ BEGIN RAISE NOTICE 'Marca as unidades como ALMOXARIFADO (ALM) se foi informada na entrada de bens...'; END;$$; | |
227 | - UPDATE PUBLIC.ESTRUTURAORGANIZACIONALPATRIM | |
228 | - SET ISALMOXARIFADO = TRUE | |
229 | - FROM | |
230 | - ( SELECT EO.ID AS ALM_ID | |
231 | - FROM PUBLIC.ESTRUTURAORGANIZACIONAL EO | |
232 | - WHERE EO.DATAFIM IS NULL | |
233 | - AND EO.ID IN (SELECT DISTINCT(UNIDADECOMPRA_ID) FROM PUBLIC.BEMPATRIMONIAL) | |
234 | - ) AS B | |
235 | - WHERE ESTRUTURAORGANIZACIONAL_ID=B.ALM_ID; | |
236 | - | |
237 | - DO $$ BEGIN RAISE NOTICE 'Marca as unidades requisitantes (sem ul correspondente) como requisitantes...'; END;$$; | |
238 | - UPDATE ESTRUTURAORGANIZACIONALALMOX | |
239 | - SET ISUNDCONSUMIDORAREQUISITANTE=TRUE | |
240 | - FROM | |
241 | - ( SELECT UR.ID FROM PUBLIC.ESTRUTURAORGANIZACIONAL UR | |
242 | - INNER JOIN PUBLIC.DOMINIO D ON UR.TIPOESTRUTURAORGANIZACIONAL_ID = D.ID AND D.CHAVE = 'tipoEstruturaOrganizacional' AND D.CODIGO=4 | |
243 | - ) AS U | |
244 | - WHERE U.ID = ESTRUTURAORGANIZACIONAL_ID; | |
245 | - | |
246 | - --> ATUALIZANDO AS UNIDADES ALMOXARIFADO E ALMOXARIFADO PADRÃO | |
247 | - DO $$ BEGIN RAISE NOTICE 'Marca as unidades requisitantes (sem ul correspondente) como requisitantes...'; END;$$; | |
248 | - UPDATE PUBLIC.ESTRUTURAORGANIZACIONALPATRIM | |
249 | - SET ISALMOXARIFADOPADRAO = ISALMOXARIFADO | |
250 | - WHERE ISALMOXARIFADOPADRAO IS NULL; | |
251 | - COMMIT; -- #FIM :: AJUSTA ATRIBUTOS 'ISLOCALIZADORADEBENS'/'ISALMOXARIFADO'/'ISUNDCONSUMIDORAREQUISITANTE | |
105 | + ALTER TABLE PUBLIC.ALM_ES_ENDERECOESTOQUE | |
106 | + DROP COLUMN END_SUP; | |
107 | + | |
108 | +COMMIT; | |
252 | 109 | |
110 | +BEGIN; -- #INI :: IMPORTACAO SALDOS PRECOS DOS MATERIAIS >> alm_materialestoque | |
111 | + | |
112 | + --CD_NATUREZA_CLASS = '01' QUER DIZER QUE E ESTOCAVEL, ELE SEPARA O PRECO POR ESTOCAVE E NAO ESTOCAVEL MAS O GRP NAO TEM ESSE CONCEITO | |
113 | + INSERT INTO alm_materialestoque | |
114 | + ( id | |
115 | + , datacriacao | |
116 | + , dataedicao | |
117 | + , version | |
118 | + , restomedio | |
119 | + , valorunitariomedio | |
120 | + , organizacao_id | |
121 | + , material_id | |
122 | + ) | |
123 | + SELECT | |
124 | + NEXTVAL('hibernate_sequence') AS id | |
125 | + , LOCALTIMESTAMP | |
126 | + , LOCALTIMESTAMP | |
127 | + , 0 | |
128 | + , E.VL_RESIDUO/100 | |
129 | + , E.PR_MEDIO/100 | |
130 | + , 1 | |
131 | + , M.ID | |
132 | + FROM asiweb.AX_ESTOQUE_UG E | |
133 | + INNER JOIN MATERIAL M ON (M.CODIGO = E.CD_BEM_SERVICO AND DOMINIOTIPOMATERIAL_ID = (SELECT id FROM DOMINIO WHERE CHAVE='tipoMaterial' and codigo = 1)) | |
134 | + WHERE E.CD_NATUREZA_CLASS = '01'; | |
135 | +COMMIT; -- #FIM :: IMPORTACAO SALDOS PRECOS DOS MATERIAIS >> alm_materialestoque | |
136 | + | |
137 | +BEGIN; --script para migrar materialenderecodeestoque | |
138 | + INSERT INTO public.alm_me_localestoque | |
139 | + ( id | |
140 | + , databloqueio | |
141 | + , datacriacao | |
142 | + , dataedicao | |
143 | + , version | |
144 | + , quantidade | |
145 | + , organizacao_id | |
146 | + , endereco_id | |
147 | + , materialestoque_id | |
148 | + , unidademedidaentrada_id | |
149 | + , localprincipal | |
150 | + , capacidade | |
151 | + ) | |
152 | + SELECT | |
153 | + NEXTVAL('hibernate_sequence') AS id | |
154 | + , NULL AS DATABLOQUEIO | |
155 | + , LOCALTIMESTAMP AS DATACRIACAO | |
156 | + , LOCALTIMESTAMP AS DATAEDICAO | |
157 | + , 0 AS VERSION | |
158 | + , 0 AS QUANTIDADE --SALDO DO MATERIAL NESSE ENDERECO DE ESTOQUE (FAZER UPDATE DEPOIS) | |
159 | + , 1 AS ORGANIZACAO_ID | |
160 | + , E.ID AS ENDERECO_ID | |
161 | + , ME.ID AS MATERIALESTOQUE_ID | |
162 | + , UM.ID AS UNIDADEMEDIDAENTRADA_ID | |
163 | + , (CASE WHEN ES.NR_ORDEM = 1 THEN TRUE ELSE FALSE END) AS LOCALPRINCIPAL | |
164 | + , ES.QT_CAPACIDADE AS CAPACIDADE | |
165 | + FROM ASIWEB.CR_END_BS_POSSIVEL ES | |
166 | + INNER JOIN PUBLIC.MATERIAL M ON (M.CODIGO = ES.CD_BEM_SERVICO) | |
167 | + INNER JOIN PUBLIC.alm_materialestoque ME ON (ME.MATERIAL_ID = M.ID) | |
168 | + INNER JOIN PUBLIC.ALM_ES_ENDERECOESTOQUE E ON (E.CODIGO = ES.CD_ENDERECO) | |
169 | + INNER JOIN PUBLIC.ALM_MATERIALCONSUMO MC ON (MC.ID = M.ID) | |
170 | + INNER JOIN PUBLIC.UNIDADEMEDIDA UM ON (UM.ID = MC.UNIDADEARMAZENAMENTO_ID); | |
171 | + | |
172 | + UPDATE public.alm_me_localestoque LE | |
173 | + SET QUANTIDADE = ESTOQUE.QT_ESTOQUE | |
174 | + FROM ( | |
175 | + SELECT ME.ID AS MATERIALESTOQUE_ID, | |
176 | + EE.ID AS ENDERECO_ID, | |
177 | + E.QT_ESTOQUE | |
178 | + FROM ASIWEB.AX_ESTOQUE_END E | |
179 | + INNER JOIN MATERIAL M ON (M.CODIGO = E.CD_BEM_SERVICO) | |
180 | + INNER JOIN alm_es_enderecoestoque EE ON (EE.CODIGO = E.CD_ENDERECO) | |
181 | + INNER JOIN ALM_MATERIALESTOQUE ME ON (ME.MATERIAL_ID = M.ID) | |
182 | + ) AS ESTOQUE | |
183 | + WHERE LE.MATERIALESTOQUE_ID = ESTOQUE.MATERIALESTOQUE_ID AND LE.ENDERECO_ID = ESTOQUE.ENDERECO_ID; | |
253 | 184 | COMMIT; |
254 | --- #FIM :: AJUSTAR URS POIS UMA ESTAVA DUPLICADA | |
255 | 185 | |
256 | -BEGIN; -- #INI :: DEFINE AS UNIDADES ALMOXARIFADO DO ORGAO >> LOCALESTOQUE | |
186 | +/*BEGIN; -- #INI :: DEFINE AS UNIDADES ALMOXARIFADO DO ORGAO >> LOCALESTOQUE | |
257 | 187 | DO $$ BEGIN RAISE NOTICE 'Importando os registros de local estoque'; END;$$; |
258 | 188 | |
259 | 189 | INSERT INTO public.localestoque |
... | ... | @@ -280,10 +210,177 @@ BEGIN; -- #INI :: DEFINE AS UNIDADES ALMOXARIFADO DO ORGAO >> LOCALESTOQUE |
280 | 210 | , NULL AS editor_id |
281 | 211 | , 1 AS organizacao_id |
282 | 212 | , EA.ESTRUTURAORGANIZACIONAL_ID AS almoxarifado_id |
283 | - FROM ESTRUTURAORGANIZACIONALALMOX EA | |
213 | + FROM alm_eo_almoxarifado EA | |
284 | 214 | JOIN (SELECT COALESCE(MAX(ID),0) AS MAX FROM PUBLIC.LOCALESTOQUE) M ON 1=1 |
285 | 215 | WHERE EA.ISALMOXARIFADO IS TRUE; |
286 | -COMMIT; -- #FIM :: DEFINE AS UNIDADES ALMOXARIFADO DO ORGAO >> LOCALESTOQUE | |
216 | +COMMIT; -- #FIM :: DEFINE AS UNIDADES ALMOXARIFADO DO ORGAO >> LOCALESTOQUE*/ | |
217 | + | |
218 | +BEGIN; -- #INI :: MOVIMENTACAO DE ENTRADAS NO ALMOXARIFADO >> ALM_ENTRADA (novo) | |
219 | + /* | |
220 | + TODAS AS ENTRADAS DO ALMOXARIFADO TEM DT_CONTABIL | |
221 | + */ | |
222 | + --> REGISTROS DE ENTRADA | |
223 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de entrada almoxarifado (header)...'; END;$$; | |
224 | + | |
225 | + INSERT INTO public.alm_entrada | |
226 | + ( id | |
227 | + , datacriacao | |
228 | + , dataedicao | |
229 | + , version | |
230 | + , codigo | |
231 | + , codigoasi | |
232 | + , datacontabil | |
233 | + , datarecebimento | |
234 | + , datareferencia | |
235 | + , iscontabilizada | |
236 | + , isentradaconcluida | |
237 | + , notarecebimento | |
238 | + , valortotalnota | |
239 | + , organizacao_id | |
240 | + , almoxarifado_id | |
241 | + , dominiofinalidade_id | |
242 | + , dominiotipoentrada_id | |
243 | + , dominiotiporecebimento_id | |
244 | + , fornecedor_id | |
245 | + --, unidaderequisitante_id | |
246 | + ) | |
247 | + SELECT DISTINCT | |
248 | + NEXTVAL('hibernate_sequence') AS id | |
249 | + , NR.DT_INCLUSAO AS datacriacao | |
250 | + , NR.DT_INCLUSAO AS dataedicao | |
251 | + , 0 AS "version" | |
252 | + , NR.CD_NOTA_REC AS codigo | |
253 | + , NR.CD_ALMOXARIFADO||NR.CD_ORGAO||NR.CD_NOTA_REC AS codigoasi | |
254 | + , NR.DT_CONTABIL AS datacontabil | |
255 | + , NR.DT_RECEBIMENTO AS datarecebimento | |
256 | + , NR.DT_CONTABIL AS datareferencia | |
257 | + , TRUE AS iscontabilizada | |
258 | + , TRUE AS isentradaconcluida | |
259 | + , NR.CD_NOTA_REC AS NOTARECEBIMENTO | |
260 | + , NRT.VL_TOTAL_ENTRADA/100 AS valortotalnota | |
261 | + , 1 AS organizacao_id | |
262 | + , (SELECT ESTRUTURAORGANIZACIONAL_ID FROM PUBLIC.alm_eo_almoxarifado WHERE ISALMOXARIFADO IS TRUE LIMIT 1) AS ALMOXARIFADO_ID --ESTA OK DESDE QUE O ESTOQUE TAMBEM SEJA ASSOCIADO A ESSE ALMOX | |
263 | + , (CASE WHEN NR.CD_FINALIDADE_MOV = '01' THEN (SELECT ID FROM DOMINIO WHERE CHAVE = 'tipoFinalidadeMaterial' and CODIGO = 1) | |
264 | + WHEN NR.CD_FINALIDADE_MOV = '03' THEN (SELECT ID FROM DOMINIO WHERE CHAVE = 'tipoFinalidadeMaterial' and CODIGO = 2) END) as dominiofinalidade_id | |
265 | + , (SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE='tipoEntrada' AND CODIGO=1) AS dominiotipoentrada_id | |
266 | + , (SELECT ID_GRP FROM PUBLIC.DOMINIO_ASI_GRP WHERE TP_GRP='tipoRecebimentoAlmoxarifado' AND CD_ASI=NR.CD_TIPO_MOVIMENTO) AS dominiotiporecebimento_id -- "asiweb.ax_tipo_movimento" | |
267 | + , PAR.ID AS fornecedor_id | |
268 | + --, null AS UNIDADEREQUISITANTE_ID -- COMO VAMOS MUDAR PARA A TABELA DE FILHOS, VOU DEIXAR NULL | |
269 | + FROM ASIWEB.AX_NOTA_REC NR | |
270 | + JOIN ( SELECT AX_NOTA_REC_ITEM.CD_ALMOXARIFADO, AX_NOTA_REC_ITEM.CD_ORGAO, AX_NOTA_REC_ITEM.CD_NOTA_REC | |
271 | + , SUM(AX_NOTA_REC_ITEM.QT_NOTA_REC_ITEM) AS QT_TOTAL_ENTRADA | |
272 | + , SUM(AX_NOTA_REC_ITEM.VL_NOTA_REC_ITEM) AS VL_TOTAL_ENTRADA | |
273 | + FROM ASIWEB.AX_NOTA_REC_ITEM | |
274 | + GROUP BY AX_NOTA_REC_ITEM.CD_ALMOXARIFADO, AX_NOTA_REC_ITEM.CD_ORGAO, AX_NOTA_REC_ITEM.CD_NOTA_REC) NRT | |
275 | + ON NRT.CD_ALMOXARIFADO::TEXT=NR.CD_ALMOXARIFADO::TEXT AND NRT.CD_ORGAO::TEXT=NR.CD_ORGAO::TEXT AND NRT.CD_NOTA_REC::TEXT=NR.CD_NOTA_REC::TEXT | |
276 | + JOIN ASIWEB.AX_V_AGENTE_ENTRADA AE ON NR.CD_AGENTE_ENTRADA::TEXT=AE.CD_AGENTE::TEXT | |
277 | + LEFT JOIN PESSOA P ON (P.AGENTE_ID=NR.CD_AGENTE_ENTRADA) | |
278 | + LEFT JOIN PARCEIRO PAR ON (PAR.PESSOA_ID = P.ID) | |
279 | + WHERE AE.CD_TIPO_AGENTE <> '2'; -- CD_TIPO_AGENTE=2 SAO URS E DECIDIMOS MIGRAR COMO DEVOLUCOES DEVIDO AO FEEDBACK DO USUARIO | |
280 | + | |
281 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de entrada almoxarifado (detail)...'; END;$$; | |
282 | + | |
283 | + /* | |
284 | + A estratégia usada para incluir os itens, foi agrupá-los por valor unitário para | |
285 | + bater com o total, pois um dos itens do mesmo material pode ter valor unitario | |
286 | + diferente por causa do resto de uma dízima periódica. | |
287 | + esta dando diferença entre o total da nota e os itens rever cd_entrada com erro = 2001000186 | |
288 | + */ | |
289 | + --> REGISTROS DOS ITENS DA REFERENCIA NECESSARIA EM ENTRADA DE ALMOXARIFADO | |
290 | + INSERT INTO alm_en_entradaitem | |
291 | + ( id | |
292 | + , datacriacao | |
293 | + , dataedicao | |
294 | + , version | |
295 | + , datavalidade | |
296 | + , numerolote | |
297 | + , quantidade | |
298 | + , valortotal | |
299 | + , valorunitario | |
300 | + , entrada_id | |
301 | + , material_id | |
302 | + , materiallocalestoque_id | |
303 | + , unidademedidaentrada_id | |
304 | + , cd_conta | |
305 | + ) | |
306 | + SELECT DISTINCT | |
307 | + NEXTVAL('hibernate_sequence') AS id | |
308 | + , E.DATACRIACAO AS datacriacao | |
309 | + , E.DATAEDICAO AS dataedicao | |
310 | + , 0 AS "version" | |
311 | + , I.DT_VALIDADE AS datavalidade | |
312 | + , I.NR_LOTE AS numerolote | |
313 | + , I.QT_NOTA_REC_ITEM AS quantidade | |
314 | + , (I.VL_NOTA_REC_ITEM)/100 AS valortotal | |
315 | + , (I.VL_NOTA_REC_ITEM/I.QT_NOTA_REC_ITEM)/100 AS valorunitario | |
316 | + , E.ID AS entrada_id | |
317 | + , M.ID AS material_id | |
318 | + , LE.ID AS materiallocalestoque_id | |
319 | + , (SELECT ID FROM PUBLIC.UNIDADEMEDIDA WHERE CODIGO=I.CD_UM_ELEMENTAR) AS unidademedidaentrada_id | |
320 | + , I.CD_CONTA | |
321 | + FROM PUBLIC.ALM_ENTRADA E | |
322 | + JOIN ASIWEB.AX_NOTA_REC_ITEM I ON E.CODIGOASI::TEXT=I.CD_ALMOXARIFADO||I.CD_ORGAO||I.CD_NOTA_REC::TEXT | |
323 | + JOIN PUBLIC.ALM_ES_ENDERECOESTOQUE EE ON (EE.CODIGO = I.CD_ENDERECO) | |
324 | + JOIN PUBLIC.MATERIAL M ON (M.CODIGO=I.CD_BEM_SERVICO) | |
325 | + JOIN PUBLIC.ALM_MATERIALESTOQUE ME ON (ME.MATERIAL_ID = M.ID) | |
326 | + JOIN PUBLIC.ALM_ME_LOCALESTOQUE LE ON (LE.MATERIALESTOQUE_ID = ME.ID AND LE.ENDERECO_ID = EE.ID); | |
327 | + | |
328 | + DO $$ | |
329 | + BEGIN | |
330 | + ALTER TABLE DOCUMENTO DROP COLUMN CODIGO; | |
331 | + ALTER TABLE DOCUMENTO ADD COLUMN codigo CHARACTER VARYING (30); | |
332 | + EXCEPTION | |
333 | + WHEN OTHERS THEN NULL; | |
334 | + END$$; | |
335 | + | |
336 | + --> DOCUMENTOS DA ENTRADA | |
337 | + INSERT INTO public.documento | |
338 | + ( id | |
339 | + , databloqueio | |
340 | + , datainativo | |
341 | + , datacriacao | |
342 | + , dataedicao | |
343 | + , version | |
344 | + , dataemissao | |
345 | + , numero | |
346 | + , inativador_id | |
347 | + , autor_id | |
348 | + , editor_id | |
349 | + , organizacao_id | |
350 | + , dominiotipodocumento_id | |
351 | + , emitente_id | |
352 | + , codigo | |
353 | + ) | |
354 | + SELECT NEXTVAL('hibernate_sequence') AS id | |
355 | + , NULL AS databloqueio | |
356 | + , NULL AS datainativo | |
357 | + , LOCALTIMESTAMP AS datacriacao | |
358 | + , LOCALTIMESTAMP AS dataedicao | |
359 | + , 0 AS "version" | |
360 | + , DOC.DT_DOCUMENTO AS dataemissao | |
361 | + , DOC.NR_DOCUMENTO AS numero | |
362 | + , NULL AS inativador_id | |
363 | + , NULL AS autor_id | |
364 | + , NULL AS editor_id | |
365 | + , 1 AS organizacao_id | |
366 | + , (SELECT ID_GRP FROM PUBLIC.DOMINIO_ASI_GRP WHERE TP_GRP='tipoDocumento' AND CD_ASI=DOC.CD_TP_DOCUMENTO) AS dominiotipodocumento_id -- "asiweb.cr_tp_documento" | |
367 | + , NULL AS emitente_id | |
368 | + , DOC.CD_ALMOXARIFADO||DOC.CD_ORGAO||DOC.CD_NOTA_REC AS codigo | |
369 | + FROM ASIWEB.AX_DOC_NOTA_REC DOC | |
370 | + ORDER BY DOC.CD_NOTA_REC; | |
371 | + | |
372 | + --> REFERENCIA DOS DOCUMENTOS DAS ENTRADAS | |
373 | + INSERT INTO public.entradadocumento | |
374 | + ( id | |
375 | + , entrada_id | |
376 | + , entradainativo_id | |
377 | + ) | |
378 | + SELECT D.ID AS id | |
379 | + , (SELECT E.ID FROM PUBLIC.ENTRADA E WHERE E.CODIGOASI=D.CODIGO) AS entrada_id | |
380 | + , NULL AS entradainativo_id | |
381 | + FROM PUBLIC.DOCUMENTO D | |
382 | + WHERE CODIGO IS NOT NULL; | |
383 | +COMMIT; | |
287 | 384 | |
288 | 385 | |
289 | 386 | BEGIN; -- #INI :: MOVIMENTACAO DE ENTRADAS NO ALMOXARIFADO >> ENTRADA |
... | ... | @@ -291,9 +388,9 @@ BEGIN; -- #INI :: MOVIMENTACAO DE ENTRADAS NO ALMOXARIFADO >> ENTRADA |
291 | 388 | TODAS AS ENTRADAS DO ALMOXARIFADO TEM DT_CONTABIL |
292 | 389 | */ |
293 | 390 | --> REGISTROS DE ENTRADA |
294 | - DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de entrada almoxarifado (header)...'; END;$$; | |
391 | + --DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de entrada almoxarifado (header)...'; END;$$; | |
295 | 392 | |
296 | - INSERT INTO public.entrada | |
393 | + /*INSERT INTO public.entrada | |
297 | 394 | ( id |
298 | 395 | , datacriacao |
299 | 396 | , dataedicao |
... | ... | @@ -346,15 +443,15 @@ BEGIN; -- #INI :: MOVIMENTACAO DE ENTRADAS NO ALMOXARIFADO >> ENTRADA |
346 | 443 | SELECT DISTINCT |
347 | 444 | E.ID AS id |
348 | 445 | , NRI.CD_NOTA_REC::BIGINT AS notarecebimento |
349 | - , (SELECT ESTRUTURAORGANIZACIONAL_ID FROM PUBLIC.ESTRUTURAORGANIZACIONALALMOX WHERE ISALMOXARIFADO IS TRUE LIMIT 1) AS estruturaorganizacional_id -- #REVER | |
446 | + , (SELECT ESTRUTURAORGANIZACIONAL_ID FROM PUBLIC.alm_eo_almoxarifado WHERE ISALMOXARIFADO IS TRUE LIMIT 1) AS estruturaorganizacional_id -- #REVER | |
350 | 447 | , (CASE WHEN N.CD_FINALIDADE_MOV = '01' THEN 623 |
351 | 448 | WHEN N.CD_FINALIDADE_MOV = '03' THEN 625 |
352 | 449 | END) |
353 | 450 | FROM PUBLIC.ENTRADA E |
354 | 451 | INNER JOIN ASIWEB.AX_NOTA_REC N ON (E.CODIGOASI=N.CD_ALMOXARIFADO||N.CD_ORGAO||N.CD_NOTA_REC) |
355 | - INNER JOIN ASIWEB.AX_NOTA_REC_ITEM NRI ON (E.CODIGOASI=NRI.CD_ALMOXARIFADO||NRI.CD_ORGAO||NRI.CD_NOTA_REC); | |
452 | + INNER JOIN ASIWEB.AX_NOTA_REC_ITEM NRI ON (E.CODIGOASI=NRI.CD_ALMOXARIFADO||NRI.CD_ORGAO||NRI.CD_NOTA_REC);*/ | |
356 | 453 | |
357 | - DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de entrada almoxarifado (detail)...'; END;$$; | |
454 | + --DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de entrada almoxarifado (detail)...'; END;$$; | |
358 | 455 | |
359 | 456 | /* |
360 | 457 | A estratégia usada para incluir os itens, foi agrupá-los por valor unitário para |
... | ... | @@ -363,7 +460,7 @@ BEGIN; -- #INI :: MOVIMENTACAO DE ENTRADAS NO ALMOXARIFADO >> ENTRADA |
363 | 460 | esta dando diferença entre o total da nota e os itens rever cd_entrada com erro = 2001000186 |
364 | 461 | */ |
365 | 462 | --> REGISTROS DOS ITENS DA REFERENCIA NECESSARIA EM ENTRADA DE ALMOXARIFADO |
366 | - INSERT INTO public.entradaalmoxarifadoitem | |
463 | + /* INSERT INTO public.entradaalmoxarifadoitem | |
367 | 464 | ( id |
368 | 465 | , datacriacao |
369 | 466 | , dataedicao |
... | ... | @@ -463,9 +560,152 @@ BEGIN; -- #INI :: MOVIMENTACAO DE ENTRADAS NO ALMOXARIFADO >> ENTRADA |
463 | 560 | , (SELECT E.ID FROM PUBLIC.ENTRADA E WHERE E.CODIGOASI=D.CODIGO) AS entrada_id |
464 | 561 | , NULL AS entradainativo_id |
465 | 562 | FROM PUBLIC.DOCUMENTO D |
466 | - WHERE CODIGO IS NOT NULL; | |
563 | + WHERE CODIGO IS NOT NULL;*/ | |
467 | 564 | COMMIT; -- #FIM :: MOVIMENTACAO DE ENTRADAS NO ALMOXARIFADO >> ENTRADA |
468 | 565 | |
566 | +BEGIN; -- #INI :: IMPORTACAO BAIXAS DE ESTOQUE >> BAIXA (NOVO) | |
567 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de baixa almoxarifado (header)...'; END;$$; | |
568 | + | |
569 | + DO $$ | |
570 | + BEGIN | |
571 | + ALTER TABLE ALM_BX_ITEM DROP COLUMN sq_baixa_item; | |
572 | + ALTER TABLE ALM_BX_ITEM ADD COLUMN sq_baixa_item CHARACTER VARYING(20); | |
573 | + COMMIT; | |
574 | + EXCEPTION | |
575 | + WHEN OTHERS THEN NULL; | |
576 | + END$$; | |
577 | + | |
578 | + /* | |
579 | + BAIXA ALMOXARIFADO | |
580 | + ================== | |
581 | + 1. Somente uma baixa está sem data da baixa, deixei ela de fora pois a data é obrigatória, por isso a codicao dt_baixa is not null; | |
582 | + 2. dominiotipobaixa definido para 'tipoBaixa' do patrimonio, mudar/criar um dominio so da baixa almoxarifado | |
583 | + */ | |
584 | + INSERT INTO public.baixa | |
585 | + ( id | |
586 | + , datacriacao | |
587 | + , dataedicao | |
588 | + , version | |
589 | + , organizacao_id | |
590 | + , codigo | |
591 | + ) | |
592 | + SELECT | |
593 | + NEXTVAL('hibernate_sequence') | |
594 | + , B.DT_BAIXA AS DATACRIACAO | |
595 | + , LOCALTIMESTAMP AS DATAEDICAO | |
596 | + , 0 AS "version" | |
597 | + , 1 AS organizacao_id | |
598 | + , (B.CD_BAIXA||B.CD_UG)::bigint AS CODIGO | |
599 | + FROM ASIWEB.AX_BAIXA B | |
600 | + WHERE B.DT_BAIXA IS NOT NULL; | |
601 | + | |
602 | + INSERT INTO public.alm_baixa | |
603 | + ( id | |
604 | + , databaixa | |
605 | + , numerobaixa | |
606 | + , almoxarifado_id | |
607 | + , destino_id | |
608 | + , dominiosituacaoestorno_id | |
609 | + , dominiotipobaixa_id | |
610 | + ) | |
611 | + SELECT B.ID AS id | |
612 | + , B.DATACRIACAO AS databaixa | |
613 | + , BA.CD_BAIXA::bigint AS numerobaixa | |
614 | + , (SELECT ESTRUTURAORGANIZACIONAL_ID FROM alm_eo_almoxarifado WHERE ISALMOXARIFADO IS TRUE LIMIT 1) AS almoxarifado_id | |
615 | + , PAR.ID AS destino_id | |
616 | + , (SELECT ID_GRP FROM PUBLIC.DOMINIO_ASI_GRP WHERE TP_GRP='tipoBaixaAlmoxarifado' AND CD_ASI=BA.CD_TIPO_MOVIMENTO) AS dominiotipobaixa_id -- "asiweb.ax_tipo_movimento" | |
617 | + , (SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE='tipoStatusBaixaEstorno' AND CODIGO=1) AS dominiosituacaoestorno_id -- por padrão ajustar no final | |
618 | + FROM BAIXA B | |
619 | + INNER JOIN ASIWEB.AX_BAIXA BA ON ((BA.CD_BAIXA||BA.CD_UG)::BIGINT=B.CODIGO) | |
620 | + LEFT JOIN PUBLIC.PARCEIRO PAR ON (PAR.AGENTE_ID=BA.CD_ORGAO_EXTERNO); | |
621 | + | |
622 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de baixa almoxarifado (detail)...'; END;$$; | |
623 | + | |
624 | + INSERT INTO public.alm_bx_item | |
625 | + ( id | |
626 | + , datacriacao | |
627 | + , dataedicao | |
628 | + , version | |
629 | + , quantidade | |
630 | + , materialconsumo_id | |
631 | + , dataestorno | |
632 | + , baixaalmoxarifado_id | |
633 | + , sq_baixa_item | |
634 | + , total | |
635 | + , CD_CONTA | |
636 | + ) | |
637 | + SELECT NEXTVAL('hibernate_sequence') as id | |
638 | + , B.DATACRIACAO AS datacricao | |
639 | + , B.DATAEDICAO AS dataedicao | |
640 | + , 0 AS "version" | |
641 | + , CASE WHEN I.QT_BAIXAR IS NULL THEN L.QT_ATENDIDO ELSE I.QT_BAIXAR END AS quantidade | |
642 | + , M.ID AS materialconsumo_id | |
643 | + , NULL AS dataestorno | |
644 | + , B.ID AS baixaalmoxarifado_id | |
645 | + , I.SQ_BAIXA_ITEM AS sq_baixa_item | |
646 | + , L.VL_BAIXA_ITEM AS total | |
647 | + , I.CD_CONTA AS CD_CONTA | |
648 | + FROM ASIWEB.AX_BAIXA_ITEM I | |
649 | + INNER JOIN ASIWEB.AX_BAIXA BA ON (BA.CD_ORGAO=I.CD_ORGAO AND BA.CD_ALMOXARIFADO=I.CD_ALMOXARIFADO AND BA.CD_UG=I.CD_UG AND BA.CD_BAIXA=I.CD_BAIXA) | |
650 | + INNER JOIN ASIWEB.AX_BAIXA_UG_LOTE L ON (L.SQ_BAIXA_ITEM=I.SQ_BAIXA_ITEM AND L.CD_ORGAO=I.CD_ORGAO AND L.CD_UG=I.CD_UG AND L.CD_ALMOXARIFADO=I.CD_ALMOXARIFADO AND L.CD_BEM_SERVICO=I.CD_BEM_SERVICO AND L.CD_BAIXA=I.CD_BAIXA) | |
651 | + INNER JOIN PUBLIC.BAIXA B ON ((BA.CD_BAIXA||BA.CD_UG)::BIGINT=B.CODIGO) | |
652 | + INNER JOIN PUBLIC.ALM_BAIXA A ON (A.ID=B.ID) | |
653 | + LEFT JOIN MATERIAL M ON (M.CODIGO = I.CD_BEM_SERVICO); | |
654 | + | |
655 | + --Apago o codigo que foi criado so para a migracao, assim posso pegar so os documentos com codigo ou seja os da funcionalidade que estou migrando agora | |
656 | + update documento | |
657 | + set codigo = null | |
658 | + where codigo is not null; | |
659 | + | |
660 | + --> DOCUMENTOS DA BAIXAALMOXARIFADO | |
661 | + INSERT INTO public.documento | |
662 | + ( id | |
663 | + , databloqueio | |
664 | + , datainativo | |
665 | + , datacriacao | |
666 | + , dataedicao | |
667 | + , version | |
668 | + , dataemissao | |
669 | + , numero | |
670 | + , inativador_id | |
671 | + , autor_id | |
672 | + , editor_id | |
673 | + , organizacao_id | |
674 | + , dominiotipodocumento_id | |
675 | + , emitente_id | |
676 | + , codigo | |
677 | + ) | |
678 | + SELECT NEXTVAL('hibernate_sequence') AS id | |
679 | + , NULL AS databloqueio | |
680 | + , NULL AS datainativo | |
681 | + , LOCALTIMESTAMP AS datacriacao | |
682 | + , LOCALTIMESTAMP AS dataedicao | |
683 | + , 0 AS "version" | |
684 | + , DOC.DT_DOCUMENTO AS dataemissao | |
685 | + , DOC.NR_DOCUMENTO AS numero | |
686 | + , NULL AS inativador_id | |
687 | + , NULL AS autor_id | |
688 | + , NULL AS editor_id | |
689 | + , 1 AS organizacao_id | |
690 | + , (SELECT ID_GRP FROM PUBLIC.DOMINIO_ASI_GRP WHERE TP_GRP='tipoDocumento' AND CD_ASI=DOC.CD_TP_DOCUMENTO) AS dominiotipodocumento_id -- "asiweb.cr_tp_documento" | |
691 | + , NULL AS emitente_id | |
692 | + , DOC.CD_BAIXA||DOC.CD_UG AS codigo | |
693 | + FROM ASIWEB.AX_DOC_BAIXA DOC | |
694 | + WHERE DOC.DT_DOCUMENTO IS NOT NULL | |
695 | + ORDER BY DOC.CD_BAIXA; | |
696 | + | |
697 | + --> REFERENCIA DOS DOCUMENTOS DAS BAIXASALMOXARIFADO | |
698 | + INSERT INTO public.baixadocumento | |
699 | + ( id | |
700 | + , baixa_ID | |
701 | + ) | |
702 | + SELECT DOC.ID | |
703 | + , B.ID | |
704 | + FROM PUBLIC.DOCUMENTO DOC | |
705 | + INNER JOIN PUBLIC.BAIXA B ON (B.CODIGO::TEXT = DOC.CODIGO) | |
706 | + WHERE DOC.CODIGO IS NOT NULL | |
707 | + ORDER BY DOC.CODIGO; | |
708 | +COMMIT; | |
469 | 709 | |
470 | 710 | BEGIN; -- #INI :: IMPORTACAO BAIXAS DE ESTOQUE >> BAIXA |
471 | 711 | |
... | ... | @@ -477,7 +717,7 @@ BEGIN; -- #INI :: IMPORTACAO BAIXAS DE ESTOQUE >> BAIXA |
477 | 717 | 1. Somente uma baixa está sem data da baixa, deixei ela de fora pois a data é obrigatória, por isso a codicao dt_baixa is not null; |
478 | 718 | 2. dominiotipobaixa definido para 'tipoBaixa' do patrimonio, mudar/criar um dominio so da baixa almoxarifado |
479 | 719 | */ |
480 | - INSERT INTO public.baixa | |
720 | + /* INSERT INTO public.baixa | |
481 | 721 | ( id |
482 | 722 | , datacriacao |
483 | 723 | , dataedicao |
... | ... | @@ -506,7 +746,7 @@ BEGIN; -- #INI :: IMPORTACAO BAIXAS DE ESTOQUE >> BAIXA |
506 | 746 | SELECT B.ID AS id |
507 | 747 | , B.DATACRIACAO AS databaixa |
508 | 748 | , BA.CD_BAIXA::bigint AS numerobaixa |
509 | - , (SELECT ESTRUTURAORGANIZACIONAL_ID FROM ESTRUTURAORGANIZACIONALALMOX WHERE ISALMOXARIFADO IS TRUE LIMIT 1) AS almoxarifado_id | |
749 | + , (SELECT ESTRUTURAORGANIZACIONAL_ID FROM alm_eo_almoxarifado WHERE ISALMOXARIFADO IS TRUE LIMIT 1) AS almoxarifado_id | |
510 | 750 | , PAR.ID AS destino_id |
511 | 751 | , (SELECT ID_GRP FROM PUBLIC.DOMINIO_ASI_GRP WHERE TP_GRP='tipoBaixaAlmoxarifado' AND CD_ASI=BA.CD_TIPO_MOVIMENTO) AS dominiotipobaixa_id -- "asiweb.ax_tipo_movimento" |
512 | 752 | , (SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE='tipoStatusBaixaEstorno' AND CODIGO=1) AS dominiosituacaoestorno_id -- por padrão ajustar no final |
... | ... | @@ -595,14 +835,93 @@ BEGIN; -- #INI :: IMPORTACAO BAIXAS DE ESTOQUE >> BAIXA |
595 | 835 | FROM PUBLIC.DOCUMENTO DOC |
596 | 836 | INNER JOIN PUBLIC.BAIXA B ON (B.CODIGO::TEXT = DOC.CODIGO) |
597 | 837 | WHERE DOC.CODIGO IS NOT NULL |
598 | - ORDER BY DOC.CODIGO; | |
838 | + ORDER BY DOC.CODIGO;*/ | |
599 | 839 | |
600 | 840 | COMMIT; -- #FIM :: IMPORTACAO BAIXAS DE ESTOQUE >> BAIXA |
601 | 841 | |
842 | +BEGIN; -- #INI :: IMPORTACAO REQUISICAO >> REQUISICAOCONSUMO (NOVO) | |
843 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de requisicao (header)...'; END;$$; | |
844 | + | |
845 | + INSERT INTO public.alm_requisicaoconsumo | |
846 | + ( id | |
847 | + , datacriacao | |
848 | + , dataedicao | |
849 | + , datarequisicao | |
850 | + , version | |
851 | + , numerorequisicao | |
852 | + , organizacao_id | |
853 | + , almoxarifado_id | |
854 | + , centrocusto_id | |
855 | + , tipostatusrequisicao_id | |
856 | + , unidaderequisitante_id | |
857 | + , datafinalizacaoatendimento | |
858 | + ) | |
859 | + SELECT NEXTVAL('hibernate_sequence') | |
860 | + , R.DT_INCLUSAO AS datacriacao | |
861 | + , LOCALTIMESTAMP AS dataedicao | |
862 | + , R.DT_REQUISICAO AS datarequisicao | |
863 | + , 0 AS version | |
864 | + , R.CD_REQUISICAO AS numeroreq | |
865 | + , 1 AS organizacao_id | |
866 | + , (SELECT ESTRUTURAORGANIZACIONAL_ID FROM PUBLIC.alm_eo_almoxarifado WHERE ISALMOXARIFADO LIMIT 1) AS almoxarifado_id | |
867 | + , EA.CENTROCUSTO_ID AS centrocusto_id -- REDMINE #3587 | |
868 | + , (SELECT ID_GRP FROM PUBLIC.DOMINIO_ASI_GRP WHERE TP_GRP='tipoStatusRequisicao' AND CD_ASI=R.CD_SITUACAO_REQ_ATUAL) AS tipostatusrequisicao_id -- "asiweb.ax_situacao_req" | |
869 | + , E.ID AS unidaderequisitante_id | |
870 | + , CASE WHEN R.CD_SITUACAO_REQ_ATUAL='007' | |
871 | + THEN R.DT_SITUACAO_REQ_ATUAL | |
872 | + ELSE NULL | |
873 | + END AS datafinalizacaoatendimento | |
874 | + FROM ASIWEB.AX_REQUISICAO R | |
875 | + INNER JOIN ASIWEB.AX_UR UR ON (UR.CD_ORGAO = R.CD_ORGAO AND UR.CD_AGENTE::TEXT = R.CD_AGENTE::TEXT) | |
876 | + INNER JOIN ESTRUTURAORGANIZACIONAL E ON (E.CODIGO = UR.CD_UR||'1') | |
877 | + INNER JOIN alm_eo_almoxarifado EA ON (EA.ESTRUTURAORGANIZACIONAL_ID = E.ID AND EA.ISUNDCONSUMIDORAREQUISITANTE); | |
878 | + | |
879 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de requisicao (detail)...'; END;$$; | |
880 | + | |
881 | + INSERT INTO public.alm_rc_item | |
882 | + ( id | |
883 | + , datacriacao | |
884 | + , dataedicao | |
885 | + , version | |
886 | + , quantidade | |
887 | + , quantidadedevolvida | |
888 | + , organizacao_id | |
889 | + , materialconsumo_id | |
890 | + , requisicaoconsumo_id | |
891 | + , quantidadeatendida | |
892 | + , sq_requisicao_item | |
893 | + , cd_conta | |
894 | + ) | |
895 | + SELECT NEXTVAL('hibernate_sequence') AS id | |
896 | + , R.DATACRIACAO AS datacriacao | |
897 | + , R.DATAEDICAO AS dataedicao | |
898 | + , 0 AS "version" | |
899 | + , I.QT_REQUISICAO AS quantidade | |
900 | + , 0 AS quantidadedevolvida | |
901 | + , R.ORGANIZACAO_ID AS organizacao_id | |
902 | + , M.ID AS materialconsumo_id | |
903 | + , R.ID AS requisicaoconsumo_id | |
904 | + , RUL.QT_ATENDIDO AS quantidadeatendida | |
905 | + , I.SQ_REQUISICAO_ITEM AS sq_requisicao_item | |
906 | + , I.CD_CONTA AS CD_CONTA | |
907 | + FROM ASIWEB.AX_REQUISICAO_ITEM I | |
908 | + INNER JOIN alm_requisicaoconsumo R ON (R.NUMEROREQUISICAO = I.CD_REQUISICAO) | |
909 | + INNER JOIN MATERIAL M ON (M.CODIGO = I.CD_BEM_SERVICO) | |
910 | + LEFT JOIN ASIWEB.AX_REQ_UG_LOTE RUL ON I.CD_ORGAO::TEXT = RUL.CD_ORGAO::TEXT AND I.CD_ALMOXARIFADO::TEXT = RUL.CD_ALMOXARIFADO::TEXT AND I.CD_REQUISICAO::TEXT = RUL.CD_REQUISICAO::TEXT AND I.SQ_REQUISICAO_ITEM = RUL.SQ_REQUISICAO_ITEM; | |
911 | + | |
912 | + -- O ASI nao tem o conceito de "Atendido Parcialmente" entao verificar necessidade de criar este no GRP | |
913 | + -- O comando abaixo atribui o novo dominio para as requisicoes com status atendida em que a quantidadeatendida eh menor que a quantidade | |
914 | + UPDATE public.alm_requisicaoconsumo | |
915 | + SET tipostatusrequisicao_id = (SELECT ID FROM DOMINIO WHERE CHAVE='tipoStatusRequisicao' AND NOME='ATENDIDA_PARCIALMENTE') | |
916 | + WHERE ID IN (SELECT DISTINCT R.ID FROM alm_requisicaoconsumo R | |
917 | + INNER JOIN alm_rc_item RCI ON (RCI.REQUISICAOCONSUMO_ID = R.ID) | |
918 | + WHERE R.TIPOSTATUSREQUISICAO_ID = (SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE ='tipoStatusRequisicao' AND CODIGO=3) | |
919 | + AND (RCI.QUANTIDADE <> RCI.QUANTIDADEATENDIDA)); | |
920 | +COMMIT; | |
602 | 921 | |
603 | 922 | BEGIN; -- #INI :: IMPORTACAO REQUISICAO >> REQUISICAOCONSUMO |
604 | 923 | |
605 | - DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de requisicao (header)...'; END;$$; | |
924 | + /*DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de requisicao (header)...'; END;$$; | |
606 | 925 | |
607 | 926 | INSERT INTO public.requisicaoconsumo |
608 | 927 | ( id |
... | ... | @@ -625,7 +944,7 @@ BEGIN; -- #INI :: IMPORTACAO REQUISICAO >> REQUISICAOCONSUMO |
625 | 944 | , 0 AS version |
626 | 945 | , R.CD_REQUISICAO AS numeroreq |
627 | 946 | , 1 AS organizacao_id |
628 | - , (SELECT ESTRUTURAORGANIZACIONAL_ID FROM PUBLIC.ESTRUTURAORGANIZACIONALALMOX WHERE ISALMOXARIFADO LIMIT 1) AS almoxarifado_id | |
947 | + , (SELECT ESTRUTURAORGANIZACIONAL_ID FROM PUBLIC.alm_eo_almoxarifado WHERE ISALMOXARIFADO LIMIT 1) AS almoxarifado_id | |
629 | 948 | , EA.CENTROCUSTO_ID AS centrocusto_id -- REDMINE #3587 |
630 | 949 | , (SELECT ID_GRP FROM PUBLIC.DOMINIO_ASI_GRP WHERE TP_GRP='tipoStatusRequisicao' AND CD_ASI=R.CD_SITUACAO_REQ_ATUAL) AS tipostatusrequisicao_id -- "asiweb.ax_situacao_req" |
631 | 950 | , E.ID AS unidaderequisitante_id |
... | ... | @@ -636,7 +955,7 @@ BEGIN; -- #INI :: IMPORTACAO REQUISICAO >> REQUISICAOCONSUMO |
636 | 955 | FROM ASIWEB.AX_REQUISICAO R |
637 | 956 | INNER JOIN ASIWEB.AX_UR UR ON (UR.CD_ORGAO = R.CD_ORGAO AND UR.CD_AGENTE::TEXT = R.CD_AGENTE::TEXT) |
638 | 957 | INNER JOIN ESTRUTURAORGANIZACIONAL E ON (E.CODIGO = UR.CD_UR||'1') |
639 | - INNER JOIN ESTRUTURAORGANIZACIONALALMOX EA ON (EA.ESTRUTURAORGANIZACIONAL_ID = E.ID AND EA.ISUNDCONSUMIDORAREQUISITANTE); | |
958 | + INNER JOIN alm_eo_almoxarifado EA ON (EA.ESTRUTURAORGANIZACIONAL_ID = E.ID AND EA.ISUNDCONSUMIDORAREQUISITANTE); | |
640 | 959 | |
641 | 960 | DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de requisicao (detail)...'; END;$$; |
642 | 961 | |
... | ... | @@ -679,13 +998,98 @@ BEGIN; -- #INI :: IMPORTACAO REQUISICAO >> REQUISICAOCONSUMO |
679 | 998 | WHERE ID IN (SELECT DISTINCT R.ID FROM REQUISICAOCONSUMO R |
680 | 999 | INNER JOIN REQUISICAOCONSUMOITEM RCI ON (RCI.REQUISICAOCONSUMO_ID = R.ID) |
681 | 1000 | WHERE R.TIPOSTATUSREQUISICAO_ID = (SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE ='tipoStatusRequisicao' AND CODIGO=3) |
682 | - AND (RCI.QUANTIDADE <> RCI.QUANTIDADEATENDIDA)); | |
1001 | + AND (RCI.QUANTIDADE <> RCI.QUANTIDADEATENDIDA))*/; | |
683 | 1002 | COMMIT; -- #FIM :: IMPORTACAO REQUISICAO >> REQUISICAOCONSUMO |
684 | 1003 | |
1004 | +BEGIN; -- #INI :: IMPORTACAO ATENDIMENTO REQUISICAO >> TESTAR (novo) | |
1005 | + CREATE INDEX idx_requisicao_link | |
1006 | + ON alm_rc_item | |
1007 | + USING btree | |
1008 | + (requisicaoconsumo_id, materialconsumo_id, sq_requisicao_item); | |
1009 | + | |
1010 | + CREATE INDEX idx_atendimentorequisicao_numero | |
1011 | + ON alm_rc_atendimento | |
1012 | + USING btree | |
1013 | + (numeroatendimento); | |
1014 | + | |
1015 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de atendimento requisicao (header)...'; END;$$; | |
1016 | + INSERT INTO public.alm_rc_atendimento | |
1017 | + ( id | |
1018 | + , databloqueio | |
1019 | + , datainativo | |
1020 | + , datacriacao | |
1021 | + , dataedicao | |
1022 | + , version | |
1023 | + , dataatendimento | |
1024 | + , numeroatendimento | |
1025 | + , inativador_id | |
1026 | + , autor_id | |
1027 | + , editor_id | |
1028 | + , organizacao_id | |
1029 | + , requisicaoconsumo_id | |
1030 | + ) | |
1031 | + SELECT NEXTVAL('hibernate_sequence') | |
1032 | + , NULL AS databloqueio | |
1033 | + , NULL AS datainativo | |
1034 | + , R.DT_CONFIRMADA AS datacriacao | |
1035 | + , LOCALTIMESTAMP AS dataedicao | |
1036 | + , 0 AS "version" | |
1037 | + , R.DT_CONFIRMADA AS dataatendimento | |
1038 | + , AR.ID_REQ_UG_LOTE AS numeroatendimento | |
1039 | + , NULL AS inativador_id | |
1040 | + , NULL AS autor_id | |
1041 | + , NULL AS editor_id | |
1042 | + , 1 AS organizacao_id | |
1043 | + , RC.ID AS requisicao_id | |
1044 | + FROM ASIWEB.AX_REQ_UG_LOTE AR | |
1045 | + INNER JOIN ASIWEB.AX_REQUISICAO R ON (R.CD_REQUISICAO = AR.CD_REQUISICAO) | |
1046 | + INNER JOIN ASIWEB.AX_REQUISICAO_ITEM RI ON (RI.CD_ALMOXARIFADO = AR.CD_ALMOXARIFADO AND RI.CD_REQUISICAO = AR.CD_REQUISICAO AND RI.CD_ORGAO = AR.CD_ORGAO AND RI.SQ_REQUISICAO_ITEM = AR.SQ_REQUISICAO_ITEM) | |
1047 | + INNER JOIN alm_requisicaoconsumo RC ON (RC.NUMEROREQUISICAO = R.CD_REQUISICAO) | |
1048 | + WHERE R.CD_SITUACAO_REQ_ATUAL IN ('002', '003', '007'); | |
1049 | + | |
1050 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de atendimento requisicao item (detail)...'; END;$$; | |
1051 | + INSERT INTO public.alm_rc_atendimentoitem | |
1052 | + ( id | |
1053 | + , databloqueio | |
1054 | + , datainativo | |
1055 | + , datacriacao | |
1056 | + , dataedicao | |
1057 | + , version | |
1058 | + , quantidade | |
1059 | + , inativador_id | |
1060 | + , autor_id | |
1061 | + , editor_id | |
1062 | + , organizacao_id | |
1063 | + , atendimentoreqconsumo_id | |
1064 | + , material_id | |
1065 | + , requisicaoconsumoitem_id | |
1066 | + , VALOR | |
1067 | + ) | |
1068 | + SELECT NEXTVAL('hibernate_sequence') AS id | |
1069 | + , NULL AS databloqueio | |
1070 | + , NULL AS datainativo | |
1071 | + , ARC.DATACRIACAO AS datacriacao | |
1072 | + , LOCALTIMESTAMP AS dataedicao | |
1073 | + , 0 AS "version" | |
1074 | + , AR.QT_ATENDIDO AS quantidade | |
1075 | + , NULL AS inativador_id | |
1076 | + , NULL AS autor_id | |
1077 | + , NULL AS editor_id | |
1078 | + , 1 AS organizacao_id | |
1079 | + , ARC.ID AS atendimentoreqconsumo_id | |
1080 | + , M.ID AS material_id | |
1081 | + , RCI.ID AS requisicaoconsumoitem_id | |
1082 | + , AR.VL_ATENDIDO/100 AS VALOR | |
1083 | + FROM ASIWEB.AX_REQ_UG_LOTE AR | |
1084 | + INNER JOIN alm_rc_atendimento ARC ON (ARC.NUMEROATENDIMENTO::NUMERIC = AR.ID_REQ_UG_LOTE) | |
1085 | + INNER JOIN MATERIAL M ON (M.CODIGO = AR.CD_BEM_SERVICO) | |
1086 | + INNER JOIN ALM_RC_ITEM RCI ON (RCI.REQUISICAOCONSUMO_ID = ARC.REQUISICAOCONSUMO_ID AND RCI.MATERIALCONSUMO_ID = M.ID AND RCI.SQ_REQUISICAO_ITEM = AR.SQ_REQUISICAO_ITEM); | |
1087 | +COMMIT; | |
1088 | + | |
685 | 1089 | |
686 | 1090 | BEGIN; -- #INI :: IMPORTACAO ATENDIMENTO REQUISICAO >> TESTAR |
687 | 1091 | |
688 | - CREATE INDEX idx_requisicao_link | |
1092 | +/* CREATE INDEX idx_requisicao_link | |
689 | 1093 | ON REQUISICAOCONSUMOITEM |
690 | 1094 | USING btree |
691 | 1095 | (requisicaoconsumo_id, materialconsumo_id, sq_requisicao_item); |
... | ... | @@ -767,13 +1171,193 @@ BEGIN; -- #INI :: IMPORTACAO ATENDIMENTO REQUISICAO >> TESTAR |
767 | 1171 | INNER JOIN ATENDIMENTOREQUISICAOCONSUMO ARC ON (ARC.NUMEROATENDIMENTO::NUMERIC = AR.ID_REQ_UG_LOTE) |
768 | 1172 | INNER JOIN MATERIAL M ON (M.CODIGO = AR.CD_BEM_SERVICO) |
769 | 1173 | INNER JOIN REQUISICAOCONSUMOITEM RCI ON (RCI.REQUISICAOCONSUMO_ID = ARC.REQUISICAOCONSUMO_ID AND RCI.MATERIALCONSUMO_ID = M.ID AND RCI.SQ_REQUISICAO_ITEM = AR.SQ_REQUISICAO_ITEM); |
770 | - | |
1174 | + */ | |
771 | 1175 | --demorando maquina ju 28 min 15-03-2016 |
772 | 1176 | COMMIT; -- #FIM :: IMPORTACAO ATENDIMENTO REQUISICAO >> TESTAR |
773 | 1177 | |
1178 | +BEGIN; -- #INI :: DEVOLUCOES (novo) | |
1179 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de devolucao (header)...'; END;$$; | |
1180 | + ALTER TABLE alm_devolucao | |
1181 | + ALTER COLUMN REQUISICAO_ID DROP NOT NULL; | |
1182 | + | |
1183 | + INSERT INTO public.alm_devolucao | |
1184 | + ( ID | |
1185 | + ,DATABLOQUEIO | |
1186 | + ,DATAINATIVO | |
1187 | + ,DATACRIACAO | |
1188 | + ,DATAEDICAO | |
1189 | + ,VERSION | |
1190 | + ,CODIGO | |
1191 | + ,DATADEVOLUCAO | |
1192 | + ,INATIVADOR_ID | |
1193 | + ,AUTOR_ID | |
1194 | + ,EDITOR_ID | |
1195 | + ,ORGANIZACAO_ID | |
1196 | + ,REQUISICAO_ID | |
1197 | + ) | |
1198 | + SELECT NEXTVAL('hibernate_sequence') | |
1199 | + ,NULL | |
1200 | + ,NULL | |
1201 | + ,NR.DT_INCLUSAO AS datacriacao | |
1202 | + ,NR.DT_INCLUSAO AS dataedicao | |
1203 | + ,0 AS "version" | |
1204 | + ,NR.CD_NOTA_REC AS codigo | |
1205 | + ,NR.DT_CONTABIL AS datacontabil | |
1206 | + ,NULL AS INATIVADOR_ID | |
1207 | + ,NULL AS AUTOR_ID | |
1208 | + ,NULL AS EDITOR_ID | |
1209 | + ,(select id from organizacao limit 1) AS ORGANIZACAO_ID | |
1210 | + ,NULL AS REQUISICAO_ID | |
1211 | + FROM ASIWEB.AX_NOTA_REC NR | |
1212 | + JOIN ASIWEB.AX_V_AGENTE_ENTRADA AE ON NR.CD_AGENTE_ENTRADA::TEXT=AE.CD_AGENTE::TEXT | |
1213 | + WHERE AE.CD_TIPO_AGENTE = '2' and NR.CD_TIPO_MOVIMENTO IN ('005', '033'); | |
1214 | + | |
1215 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de devolucao (detail)...'; END;$$; | |
1216 | + INSERT INTO public.alm_dev_item | |
1217 | + ( ID | |
1218 | + ,DATABLOQUEIO | |
1219 | + ,DATAINATIVO | |
1220 | + ,DATACRIACAO | |
1221 | + ,DATAEDICAO | |
1222 | + ,VERSION | |
1223 | + ,QUANTIDADE | |
1224 | + ,INATIVADOR_ID | |
1225 | + ,AUTOR_ID | |
1226 | + ,EDITOR_ID | |
1227 | + ,ORGANIZACAO_ID | |
1228 | + ,DEVOLUCAO_ID | |
1229 | + ,MATERIALCONSUMO_ID | |
1230 | + ,cd_conta | |
1231 | + ) | |
1232 | + SELECT NEXTVAL('hibernate_sequence') | |
1233 | + ,NULL | |
1234 | + ,NULL | |
1235 | + ,D.DATACRIACAO AS datacriacao | |
1236 | + ,D.DATAEDICAO AS dataedicao | |
1237 | + ,0 AS "version" | |
1238 | + ,I.QT_NOTA_REC_ITEM AS quantidade | |
1239 | + ,NULL AS INATIVADOR_ID | |
1240 | + ,NULL AS AUTOR_ID | |
1241 | + ,NULL AS EDITOR_ID | |
1242 | + ,(SELECT ID FROM ORGANIZACAO LIMIT 1) AS ORGANIZACAO_ID | |
1243 | + ,D.ID AS DEVOLUCAO_ID | |
1244 | + ,M.ID AS MATERIALCONSUMO_ID | |
1245 | + ,I.CD_CONTA AS CD_CONTA | |
1246 | + FROM PUBLIC.alm_devolucao D | |
1247 | + JOIN ASIWEB.AX_NOTA_REC_ITEM I ON D.CODIGO=I.CD_NOTA_REC | |
1248 | + JOIN PUBLIC.MATERIAL M ON (M.CODIGO=I.CD_BEM_SERVICO); | |
1249 | + | |
1250 | + ALTER TABLE ALM_REQUISICAOCONSUMO | |
1251 | + ADD COLUMN DEVOLUCAO_ID BIGINT; | |
1252 | + | |
1253 | + --CRIANDO AS REQUISICOES PARA LINKAR AS DEVOLUCOES | |
1254 | + | |
1255 | + -- #INI :: REQUISICAO CONSUMO VINCULADA A DEVOLUCAO | |
1256 | + DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de requisicoes que devem ser linkadas a devolucao '; END;$$; | |
1257 | + | |
1258 | + DO $$ | |
1259 | + DECLARE | |
1260 | + rREQ RECORD; | |
1261 | + v_codigo character varying(10); | |
1262 | + BEGIN | |
1263 | + -- REQUISICOES QUE DEVERAO SER VINCULADAS AS DEVOLUCOES | |
1264 | + FOR rREQ IN | |
1265 | + SELECT | |
1266 | + NR.DT_INCLUSAO AS datarequisicao | |
1267 | + ,(SELECT ID FROM ORGANIZACAO LIMIT 1) AS organizacao | |
1268 | + ,(SELECT ESTRUTURAORGANIZACIONAL_ID FROM PUBLIC.alm_eo_almoxarifado WHERE ISALMOXARIFADO IS TRUE LIMIT 1) AS ALMOXARIFADO_id | |
1269 | + ,(SELECT ID FROM PUBLIC.CENTROCUSTO WHERE CODIGO = CC.CD_CENTRO_CUSTO) AS CENTROCUSTO | |
1270 | + ,(SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE='tipoStatusRequisicao' AND CODIGO=5) AS TIPOSTATUSREQUISICAO -- FINALIZADA | |
1271 | + ,E.ID AS unidaderequisitante | |
1272 | + ,NR.DT_INCLUSAO AS DATAFINALIZACAO | |
1273 | + ,D.ID AS DEVOLUCAO | |
1274 | + FROM ASIWEB.AX_NOTA_REC NR | |
1275 | + JOIN ASIWEB.AX_V_AGENTE_ENTRADA AE ON NR.CD_AGENTE_ENTRADA::TEXT=AE.CD_AGENTE::TEXT | |
1276 | + JOIN ASIWEB.AX_UR UR ON (UR.CD_UR = AE.CD_AGENTE_EXT) | |
1277 | + JOIN ASIWEB.CR_CENTRO_CUSTO CC ON (CC.CD_CENTRO_CUSTO = UR.CD_CENTRO_CUSTO) | |
1278 | + INNER JOIN ESTRUTURAORGANIZACIONAL E ON (E.CODIGO = UR.CD_UR||'1') | |
1279 | + INNER JOIN alm_eo_almoxarifado EA ON (EA.ESTRUTURAORGANIZACIONAL_ID = E.ID AND EA.ISUNDCONSUMIDORAREQUISITANTE) | |
1280 | + INNER JOIN alm_devolucao D ON (D.CODIGO = NR.CD_NOTA_REC) | |
1281 | + WHERE AE.CD_TIPO_AGENTE = '2' and NR.CD_TIPO_MOVIMENTO IN ('005', '033') | |
1282 | + LOOP | |
1283 | + v_codigo := (select extract(year from rREQ.datarequisicao)||lpad(t.novareq::text, 6, '0') from (select substring(max(numerorequisicao) from 5 for 6)::bigint+1 as novareq from alm_requisicaoconsumo where extract(year from datarequisicao) = extract(year from rREQ.datarequisicao)) as t); | |
1284 | + | |
1285 | + INSERT INTO public.alm_requisicaoconsumo | |
1286 | + (id, | |
1287 | + datacriacao, | |
1288 | + dataedicao, | |
1289 | + datarequisicao, | |
1290 | + version, | |
1291 | + numerorequisicao, | |
1292 | + organizacao_id, | |
1293 | + almoxarifado_id, | |
1294 | + centrocusto_id, | |
1295 | + tipostatusrequisicao_id, | |
1296 | + unidaderequisitante_id, | |
1297 | + datafinalizacaoatendimento, | |
1298 | + devolucao_id | |
1299 | + )VALUES( | |
1300 | + NEXTVAL('hibernate_sequence'), | |
1301 | + rREQ.datarequisicao, | |
1302 | + rREQ.datarequisicao, | |
1303 | + rREQ.datarequisicao, | |
1304 | + 0, | |
1305 | + v_codigo, | |
1306 | + rREQ.organizacao, | |
1307 | + rREQ.almoxarifado_id, | |
1308 | + rREQ.centrocusto, | |
1309 | + rREQ.TIPOSTATUSREQUISICAO, | |
1310 | + rREQ.unidaderequisitante, | |
1311 | + rREQ.datarequisicao, | |
1312 | + rREQ.DEVOLUCAO | |
1313 | + ); | |
1314 | + END LOOP; | |
1315 | + | |
1316 | + END$$; | |
1317 | + -- #FIM :: REQUISICAO CONSUMO VINCULADA A DEVOLUCAO | |
1318 | + | |
1319 | + INSERT INTO PUBLIC.alm_rc_item | |
1320 | + ( ID, | |
1321 | + DATACRIACAO, | |
1322 | + DATAEDICAO, | |
1323 | + VERSION, | |
1324 | + QUANTIDADE, | |
1325 | + QUANTIDADEDEVOLVIDA, | |
1326 | + organizacao_id, | |
1327 | + MATERIALCONSUMO_ID, | |
1328 | + REQUISICAOCONSUMO_ID, | |
1329 | + QUANTIDADEATENDIDA | |
1330 | + ) | |
1331 | + SELECT NEXTVAL('hibernate_sequence') | |
1332 | + ,D.DATACRIACAO AS DATACRIACAO | |
1333 | + ,D.DATAEDICAO AS DATAEDICAO | |
1334 | + ,0 AS "VERSION" | |
1335 | + ,I.QT_NOTA_REC_ITEM AS QTD | |
1336 | + ,I.QT_NOTA_REC_ITEM AS QTDDEVOLVIDA | |
1337 | + ,(SELECT ID FROM ORGANIZACAO LIMIT 1) AS ORGANIZACAO | |
1338 | + ,M.ID AS MATERIAL_ID | |
1339 | + ,(select id from ALM_REQUISICAOCONSUMO where devolucao_id = d.id) as requisicao_id | |
1340 | + ,I.QT_NOTA_REC_ITEM AS QTDATENDIDA | |
1341 | + FROM PUBLIC.ALM_DEVOLUCAO D | |
1342 | + JOIN ASIWEB.AX_NOTA_REC_ITEM I ON D.CODIGO=I.CD_NOTA_REC | |
1343 | + JOIN PUBLIC.MATERIAL M ON (M.CODIGO=I.CD_BEM_SERVICO); | |
1344 | + | |
1345 | + -- Setando requisicoes nas devolucoes | |
1346 | + | |
1347 | + UPDATE ALM_DEVOLUCAO d | |
1348 | + SET requisicao_id = (select id from ALM_REQUISICAOCONSUMO where devolucao_id = d.id); | |
1349 | + | |
1350 | + --campo de devolucao na requisicao nao é mais necessario | |
1351 | + ALTER TABLE ALM_REQUISICAOCONSUMO | |
1352 | + DROP COLUMN DEVOLUCAO_ID; | |
1353 | + | |
1354 | + | |
1355 | + ALTER TABLE ALM_DEVOLUCAO | |
1356 | + ALTER COLUMN REQUISICAO_ID SET NOT NULL; | |
1357 | +COMMIT; -- #FIM :: DEVOLUCOES | |
774 | 1358 | |
775 | 1359 | BEGIN; -- #INI :: DEVOLUCOES |
776 | - DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de devolucao (header)...'; END;$$; | |
1360 | +/* DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de devolucao (header)...'; END;$$; | |
777 | 1361 | ALTER TABLE DEVOLUCAO |
778 | 1362 | ALTER COLUMN REQUISICAO_ID DROP NOT NULL; |
779 | 1363 | |
... | ... | @@ -862,9 +1446,9 @@ BEGIN; -- #INI :: DEVOLUCOES |
862 | 1446 | SELECT |
863 | 1447 | NR.DT_INCLUSAO AS datarequisicao |
864 | 1448 | ,(SELECT ID FROM ORGANIZACAO LIMIT 1) AS organizacao |
865 | - ,(SELECT ESTRUTURAORGANIZACIONAL_ID FROM PUBLIC.ESTRUTURAORGANIZACIONALALMOX WHERE ISALMOXARIFADO IS TRUE LIMIT 1) AS ALMOXARIFADO_id | |
1449 | + ,(SELECT ESTRUTURAORGANIZACIONAL_ID FROM PUBLIC.alm_eo_almoxarifado WHERE ISALMOXARIFADO IS TRUE LIMIT 1) AS ALMOXARIFADO_id | |
866 | 1450 | ,(SELECT ID FROM PUBLIC.CENTROCUSTO WHERE CODIGO = CC.CD_CENTRO_CUSTO) AS CENTROCUSTO |
867 | - ,(SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE='tipoStatusRequisicao' AND CODIGO=5) AS TIPOSTATUSREQUISICAO -- DEVOLVIDA | |
1451 | + ,(SELECT ID FROM PUBLIC.DOMINIO WHERE CHAVE='tipoStatusRequisicao' AND CODIGO=5) AS TIPOSTATUSREQUISICAO -- FINALIZADA | |
868 | 1452 | ,E.ID AS unidaderequisitante |
869 | 1453 | ,NR.DT_INCLUSAO AS DATAFINALIZACAO |
870 | 1454 | ,D.ID AS DEVOLUCAO |
... | ... | @@ -873,7 +1457,7 @@ BEGIN; -- #INI :: DEVOLUCOES |
873 | 1457 | JOIN ASIWEB.AX_UR UR ON (UR.CD_UR = AE.CD_AGENTE_EXT) |
874 | 1458 | JOIN ASIWEB.CR_CENTRO_CUSTO CC ON (CC.CD_CENTRO_CUSTO = UR.CD_CENTRO_CUSTO) |
875 | 1459 | INNER JOIN ESTRUTURAORGANIZACIONAL E ON (E.CODIGO = UR.CD_UR||'1') |
876 | - INNER JOIN ESTRUTURAORGANIZACIONALALMOX EA ON (EA.ESTRUTURAORGANIZACIONAL_ID = E.ID AND EA.ISUNDCONSUMIDORAREQUISITANTE) | |
1460 | + INNER JOIN alm_eo_almoxarifado EA ON (EA.ESTRUTURAORGANIZACIONAL_ID = E.ID AND EA.ISUNDCONSUMIDORAREQUISITANTE) | |
877 | 1461 | INNER JOIN DEVOLUCAO D ON (D.CODIGO = NR.CD_NOTA_REC) |
878 | 1462 | WHERE AE.CD_TIPO_AGENTE = '2' and NR.CD_TIPO_MOVIMENTO IN ('005', '033') |
879 | 1463 | LOOP |
... | ... | @@ -950,15 +1534,15 @@ BEGIN; -- #INI :: DEVOLUCOES |
950 | 1534 | |
951 | 1535 | |
952 | 1536 | ALTER TABLE DEVOLUCAO |
953 | - ALTER COLUMN REQUISICAO_ID SET NOT NULL; | |
1537 | + ALTER COLUMN REQUISICAO_ID SET NOT NULL; */ | |
954 | 1538 | COMMIT; -- #FIM :: DEVOLUCOES |
955 | 1539 | |
956 | 1540 | |
957 | 1541 | -- ############ ########## |
958 | 1542 | -- ############ REVER COM CONCEITO DE CLASSIFICACAO POR NATUREZA (ESTOCAVEL E NAO ESTOCAVEL) ########## |
959 | 1543 | -- ############ ########## |
960 | -BEGIN; -- #INI :: IMPORTACAO SALDOS DE ESTOQUE >> MOVIMENTOESTOQUESALDOMEDIO | |
961 | - DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de materialestoquesaldomedio ...'; END;$$; | |
1544 | +BEGIN; -- #INI :: IMPORTACAO SALDOS DE ESTOQUE >> MOVIMENTOESTOQUESALDOMEDIO | |
1545 | +/* DO $$ BEGIN RAISE NOTICE 'Importando os registros consolidados de materialestoquesaldomedio ...'; END;$$; | |
962 | 1546 | INSERT INTO public.materialestoquesaldomedio |
963 | 1547 | ( id |
964 | 1548 | , datacriacao |
... | ... | @@ -990,89 +1574,77 @@ BEGIN; -- #INI :: IMPORTACAO SALDOS DE ESTOQUE >> MOVIMENTOESTOQUESALDOMEDIO |
990 | 1574 | FROM MATERIALESTOQUESALDOMEDIO E |
991 | 1575 | INNER JOIN MATERIAL M ON (M.ID = E.MATERIAL_ID AND DOMINIOTIPOMATERIAL_ID = (SELECT id FROM DOMINIO WHERE CHAVE='tipoMaterial' and codigo = 1)) |
992 | 1576 | ) AS ESTOQUE |
993 | - WHERE S.MATERIAL_ID = ESTOQUE.MATERIAL_ID; | |
1577 | + WHERE S.MATERIAL_ID = ESTOQUE.MATERIAL_ID; */ | |
994 | 1578 | COMMIT; -- #FIM :: IMPORTACAO SALDOS DE ESTOQUE >> MOVIMENTOESTOQUESALDOMEDIO |
995 | 1579 | |
996 | -BEGIN; -- #INI :: IMPORTACAO DOS MOVIMENTO DE ESTOQUE >> MOVIMENTOESTOQUE | |
1580 | +BEGIN; -- #INI :: IMPORTACAO DOS MOVIMENTO DE ESTOQUE >> alm_me_movimentoestoque | |
997 | 1581 | DO $$ BEGIN RAISE NOTICE 'Criando os movimentos do estoque para geracao dos saldos mensais'; END;$$; |
998 | 1582 | -- MOVIMENTOS DE ENTRADA |
999 | 1583 | DO $$ BEGIN RAISE NOTICE 'Criando os movimentos do estoque para entradas'; END;$$; |
1000 | - INSERT INTO public.movimentoestoque | |
1001 | - ( id | |
1002 | - , databloqueio | |
1003 | - , datainativo | |
1004 | - , datacriacao | |
1005 | - , dataedicao | |
1006 | - , version | |
1007 | - , datamovimento | |
1008 | - , quantidade | |
1009 | - , valorfifo | |
1010 | - , valormedia | |
1011 | - , inativador_id | |
1012 | - , autor_id | |
1013 | - , editor_id | |
1014 | - , organizacao_id | |
1015 | - , atendimentoreqconsumoitem_id | |
1016 | - , baixaalmoxarifadoitem_id | |
1017 | - , devolucaoitem_id | |
1018 | - , entradaalmoxarifadoitem_id | |
1019 | - , localestoque_id | |
1020 | - , material_id | |
1021 | - , materialestoquesaldo_id | |
1022 | - , tipomovimento_id | |
1023 | - ) | |
1584 | + INSERT INTO alm_me_movimentoestoque | |
1585 | + ( id | |
1586 | + , databloqueio | |
1587 | + , datainativo | |
1588 | + , datacriacao | |
1589 | + , dataedicao | |
1590 | + , version | |
1591 | + , datamovimento | |
1592 | + , idclassereferencia | |
1593 | + , quantidade | |
1594 | + , valorfifo | |
1595 | + , valormedia | |
1596 | + , organizacao_id | |
1597 | + , dominioclassereferencia_id | |
1598 | + , material_id | |
1599 | + , materialestoque_id | |
1600 | + , materiallocalestoque_id | |
1601 | + , tipomovimento_id | |
1602 | + ) | |
1024 | 1603 | SELECT NEXTVAL('hibernate_sequence') AS ID |
1025 | 1604 | , NULL AS databloqueio |
1026 | 1605 | , NULL AS datainativo |
1027 | - , E.DATACRIACAO AS datacriacao | |
1606 | + , EA.DATACRIACAO AS datacriacao | |
1028 | 1607 | , LOCALTIMESTAMP AS dataedicao |
1029 | 1608 | , 0 AS "version" |
1030 | - , E.DATACONTABIL AS datamovimento | |
1609 | + , EA.DATACONTABIL AS datamovimento | |
1610 | + , EA.ID AS IDCLASSEREFERENCIA | |
1031 | 1611 | , EAI.QUANTIDADE AS quantidade |
1032 | - , EAI.VALORTOTAL AS valorfifo | |
1033 | - , EAI.VALORTOTAL AS valormedia | |
1034 | - , NULL AS inativador_id | |
1035 | - , NULL AS autor_id | |
1036 | - , NULL AS editor_id | |
1612 | + , EAI.VALORTOTAL AS valorfifo | |
1613 | + , EAI.VALORTOTAL AS valormedia | |
1037 | 1614 | , 1 AS organizacao_id |
1038 | - , NULL AS atendimentoreqconsumoitem_id | |
1039 | - , NULL AS baixaalmoxarifadoitem_id | |
1040 | - , NULL AS devolucaoitem_id | |
1041 | - , EAI.ID AS entradaalmoxarifadoitem_id | |
1042 | - , (SELECT ID FROM LOCALESTOQUE LIMIT 1) AS LOCALESTOQUE_ID | |
1615 | + , (SELECT ID FROM DOMINIO WHERE CHAVE = 'classeReferencia' AND CODIGO = 15) AS DOMINIOCLASSEREFERENCIA_ID --ENTRADAALMOXARIFADO | |
1616 | + , (SELECT ID FROM ALM_ESTOQUE LIMIT 1) AS LOCALESTOQUE_ID | |
1043 | 1617 | , EAI.MATERIAL_ID AS material_id |
1044 | - , NULL AS materialestoquesaldo_id | |
1618 | + , ME.ID AS MATERIALESTOQUE_ID | |
1619 | + , EAI.materiallocalestoque_id AS materiallocalestoque_id | |
1045 | 1620 | , (SELECT ID FROM DOMINIO WHERE CHAVE = 'tipoMovimentoEstoque' AND CODIGO = 1) AS tipomovimento_id |
1046 | - FROM ENTRADAALMOXARIFADO EA | |
1047 | - INNER JOIN ENTRADA E ON (E.ID = EA.ID) | |
1048 | - INNER JOIN ENTRADAALMOXARIFADOITEM EAI ON (EAI.ENTRADA_ID = E.ID); | |
1621 | + FROM ALM_ENTRADA EA | |
1622 | + INNER JOIN alm_en_entradaitem EAI ON (EAI.ENTRADA_ID = EA.ID) | |
1623 | + INNER JOIN ALM_MATERIALESTOQUE ME ON (ME.MATERIAL_ID = EAI.MATERIAL_ID); | |
1049 | 1624 | |
1050 | 1625 | --MOVIMENTOS DE BAIXA |
1051 | 1626 | DO $$ BEGIN RAISE NOTICE 'Criando os movimentos do estoque para a baixa'; END;$$; |
1052 | - INSERT INTO public.movimentoestoque | |
1053 | - ( id | |
1054 | - , databloqueio | |
1055 | - , datainativo | |
1056 | - , datacriacao | |
1057 | - , dataedicao | |
1058 | - , version | |
1059 | - , datamovimento | |
1060 | - , quantidade | |
1061 | - , valorfifo | |
1062 | - , valormedia | |
1063 | - , inativador_id | |
1064 | - , autor_id | |
1065 | - , editor_id | |
1066 | - , organizacao_id | |
1067 | - , atendimentoreqconsumoitem_id | |
1068 | - , baixaalmoxarifadoitem_id | |
1069 | - , devolucaoitem_id | |
1070 | - , entradaalmoxarifadoitem_id | |
1071 | - , localestoque_id | |
1072 | - , material_id | |
1073 | - , materialestoquesaldo_id | |
1074 | - , tipomovimento_id | |
1075 | - ) | |
1627 | + --MOVIMENTOS DE BAIXA | |
1628 | + DO $$ BEGIN RAISE NOTICE 'Criando os movimentos do estoque para a baixa'; END;$$; | |
1629 | + INSERT INTO alm_me_movimentoestoque | |
1630 | + ( id | |
1631 | + , databloqueio | |
1632 | + , datainativo | |
1633 | + , datacriacao | |
1634 | + , dataedicao | |
1635 | + , version | |
1636 | + , datamovimento | |
1637 | + , idclassereferencia | |
1638 | + , quantidade | |
1639 | + , valorfifo | |
1640 | + , valormedia | |
1641 | + , organizacao_id | |
1642 | + , dominioclassereferencia_id | |
1643 | + , material_id | |
1644 | + , materialestoque_id | |
1645 | + , materiallocalestoque_id | |
1646 | + , tipomovimento_id | |
1647 | + ) | |
1076 | 1648 | SELECT NEXTVAL('hibernate_sequence') AS ID |
1077 | 1649 | , NULL AS databloqueio |
1078 | 1650 | , NULL AS datainativo |
... | ... | @@ -1080,54 +1652,48 @@ BEGIN; -- #INI :: IMPORTACAO DOS MOVIMENTO DE ESTOQUE >> MOVIMENTOESTOQUE |
1080 | 1652 | , LOCALTIMESTAMP AS dataedicao |
1081 | 1653 | , 0 AS "version" |
1082 | 1654 | , BA.DATABAIXA AS datamovimento |
1655 | + , BAI.ID AS IDCLASSEREFERENCIA | |
1083 | 1656 | , -BAI.QUANTIDADE AS quantidade |
1084 | 1657 | , -(BL.VL_BAIXA_ITEM/100) AS valorfifo |
1085 | 1658 | , -(BL.VL_BAIXA_ITEM/100) AS valormedia |
1086 | - , NULL AS inativador_id | |
1087 | - , NULL AS autor_id | |
1088 | - , NULL AS editor_id | |
1089 | 1659 | , 1 AS organizacao_id |
1090 | - , NULL AS atendimentoreqconsumoitem_id | |
1091 | - , BAI.ID AS baixaalmoxarifadoitem_id | |
1092 | - , NULL AS devolucaoitem_id | |
1093 | - , NULL AS entradaalmoxarifadoitem_id | |
1094 | - , (SELECT ID FROM LOCALESTOQUE LIMIT 1) AS localestoque_id | |
1660 | + , (SELECT ID FROM DOMINIO WHERE CHAVE = 'classeReferencia' AND CODIGO = 13) AS DOMINIOCLASSEREFERENCIA_ID --BAIXAALMOXARIFADO | |
1661 | + , (SELECT ID FROM ALM_ESTOQUE LIMIT 1) AS localestoque_id | |
1095 | 1662 | , BAI.MATERIALCONSUMO_ID AS material_id |
1096 | - , NULL AS materialestoquesaldo_id | |
1663 | + , ME.ID AS MATERIALESTOQUE_ID | |
1664 | + , LE.ID AS materiallocalestoque_id | |
1097 | 1665 | , (SELECT ID FROM DOMINIO WHERE CHAVE = 'tipoMovimentoEstoque' AND CODIGO = 2) AS tipomovimento_id |
1098 | - FROM BAIXAALMOXARIFADO BA | |
1666 | + FROM ALM_BAIXA BA | |
1099 | 1667 | INNER JOIN BAIXA B ON (B.ID = BA.ID) |
1100 | - INNER JOIN BAIXAALMOXARIFADOITEM BAI ON (BAI.BAIXAALMOXARIFADO_ID = B.ID) | |
1668 | + INNER JOIN ALM_BX_ITEM BAI ON (BAI.BAIXAALMOXARIFADO_ID = B.ID) | |
1669 | + INNER JOIN ALM_MATERIALESTOQUE ME ON (ME.MATERIAL_ID = BAI.MATERIALCONSUMO_ID) | |
1101 | 1670 | INNER JOIN ASIWEB.AX_BAIXA_ITEM BI ON (BI.CD_BAIXA||BI.CD_UG = B.CODIGO::text and BAI.SQ_BAIXA_ITEM = BI.SQ_BAIXA_ITEM) |
1102 | 1671 | INNER JOIN ASIWEB.AX_BAIXA_UG_LOTE BL ON (BL.CD_ORGAO = BI.CD_ORGAO AND BL.CD_ALMOXARIFADO = BI.CD_ALMOXARIFADO AND BL.CD_UG = BI.CD_UG AND BL.CD_BAIXA = BI.CD_BAIXA AND BL.CD_BEM_SERVICO = BI.CD_BEM_SERVICO AND BL.SQ_BAIXA_ITEM = BI.SQ_BAIXA_ITEM) |
1672 | + INNER JOIN PUBLIC.ALM_ES_ENDERECOESTOQUE EE ON (EE.CODIGO = BL.CD_ENDERECO) | |
1673 | + INNER JOIN PUBLIC.ALM_ME_LOCALESTOQUE LE ON (LE.MATERIALESTOQUE_ID = ME.ID AND LE.ENDERECO_ID = EE.ID) | |
1103 | 1674 | ORDER BY BAI.ID; |
1104 | 1675 | |
1105 | 1676 | -- movimentos de atendimento de requisicao |
1106 | 1677 | DO $$ BEGIN RAISE NOTICE 'Criando os movimentos do estoque para os atendimentos a requsicoes'; END;$$; |
1107 | - INSERT INTO public.movimentoestoque | |
1108 | - ( id | |
1109 | - , databloqueio | |
1110 | - , datainativo | |
1111 | - , datacriacao | |
1112 | - , dataedicao | |
1113 | - , version | |
1114 | - , datamovimento | |
1115 | - , quantidade | |
1116 | - , valorfifo | |
1117 | - , valormedia | |
1118 | - , inativador_id | |
1119 | - , autor_id | |
1120 | - , editor_id | |
1121 | - , organizacao_id | |
1122 | - , atendimentoreqconsumoitem_id | |
1123 | - , baixaalmoxarifadoitem_id | |
1124 | - , devolucaoitem_id | |
1125 | - , entradaalmoxarifadoitem_id | |
1126 | - , localestoque_id | |
1127 | - , material_id | |
1128 | - , materialestoquesaldo_id | |
1129 | - , tipomovimento_id | |
1130 | - ) | |
1678 | + INSERT INTO alm_me_movimentoestoque | |
1679 | + ( id | |
1680 | + , databloqueio | |
1681 | + , datainativo | |
1682 | + , datacriacao | |
1683 | + , dataedicao | |
1684 | + , version | |
1685 | + , datamovimento | |
1686 | + , idclassereferencia | |
1687 | + , quantidade | |
1688 | + , valorfifo | |
1689 | + , valormedia | |
1690 | + , organizacao_id | |
1691 | + , dominioclassereferencia_id | |
1692 | + , material_id | |
1693 | + , materialestoque_id | |
1694 | + , materiallocalestoque_id | |
1695 | + , tipomovimento_id | |
1696 | + ) | |
1131 | 1697 | SELECT NEXTVAL('hibernate_sequence') AS id |
1132 | 1698 | , NULL AS databloqueio |
1133 | 1699 | , NULL AS datainativo |
... | ... | @@ -1135,51 +1701,44 @@ BEGIN; -- #INI :: IMPORTACAO DOS MOVIMENTO DE ESTOQUE >> MOVIMENTOESTOQUE |
1135 | 1701 | , LOCALTIMESTAMP AS dataedicao |
1136 | 1702 | , 0 AS "version" |
1137 | 1703 | , A.DATAATENDIMENTO AS datamovimento |
1704 | + , AI.ID AS IDCLASSEREFERENCIA | |
1138 | 1705 | , -AI.QUANTIDADE AS quantidade |
1139 | 1706 | , (case when ai.quantidade = 0 then 0 else -(AI.VALOR) end) AS valorfifo |
1140 | 1707 | , (case when ai.quantidade = 0 then 0 else -(AI.VALOR) end) AS valormedia |
1141 | - , NULL AS inativador_id | |
1142 | - , NULL AS autor_id | |
1143 | - , NULL AS editor_id | |
1144 | 1708 | , 1 AS organizacao_id |
1145 | - , AI.ID AS atendimentoreqconsumoitem_id | |
1146 | - , NULL AS baixaalmoxarifadoitem_id | |
1147 | - , NULL AS devolucaoitem_id | |
1148 | - , NULL AS entradaalmoxarifadoitem_id | |
1149 | - , (SELECT ID FROM LOCALESTOQUE LIMIT 1) AS LOCALESTOQUE_ID | |
1709 | + , (SELECT ID FROM DOMINIO WHERE CHAVE = 'classeReferencia' AND CODIGO = 14) AS DOMINIOCLASSEREFERENCIA_ID --ATENDIMENTOCONSUMO | |
1710 | + , (SELECT ID FROM ALM_ESTOQUE LIMIT 1) AS LOCALESTOQUE_ID | |
1150 | 1711 | , AI.MATERIAL_ID AS material_id |
1151 | - , NULL AS materialestoquesaldo_id | |
1712 | + , ME.ID AS MATERIALESTOQUE_ID | |
1713 | + , LE.ID AS materiallocalestoque_id | |
1152 | 1714 | , (SELECT ID FROM DOMINIO WHERE CHAVE = 'tipoMovimentoEstoque' AND CODIGO = 3) AS tipomovimento_id |
1153 | - FROM ATENDIMENTOREQUISICAOCONSUMO A | |
1154 | - INNER JOIN ATENDIMENTOREQCONSUMOITEM AI ON (A.ID = AI.ATENDIMENTOREQCONSUMO_ID); | |
1715 | + FROM alm_rc_atendimento A | |
1716 | + INNER JOIN alm_rc_atendimentoitem AI ON (A.ID = AI.ATENDIMENTOREQCONSUMO_ID) | |
1717 | + INNER JOIN ALM_MATERIALESTOQUE ME ON (ME.MATERIAL_ID = AI.MATERIAL_ID) | |
1718 | + INNER JOIN PUBLIC.ALM_ME_LOCALESTOQUE LE ON (LE.MATERIALESTOQUE_ID = ME.ID AND LE.LOCALPRINCIPAL IS TRUE); | |
1155 | 1719 | |
1156 | 1720 | |
1157 | 1721 | -- MOVIMENTOS DEVOLUCOES |
1158 | 1722 | DO $$ BEGIN RAISE NOTICE 'Criando os movimentos do estoque para devolucoes'; END;$$; |
1159 | - INSERT INTO public.movimentoestoque | |
1160 | - ( id | |
1161 | - , databloqueio | |
1162 | - , datainativo | |
1163 | - , datacriacao | |
1164 | - , dataedicao | |
1165 | - , version | |
1166 | - , datamovimento | |
1167 | - , quantidade | |
1168 | - , valorfifo | |
1169 | - , valormedia | |
1170 | - , inativador_id | |
1171 | - , autor_id | |
1172 | - , editor_id | |
1173 | - , organizacao_id | |
1174 | - , atendimentoreqconsumoitem_id | |
1175 | - , baixaalmoxarifadoitem_id | |
1176 | - , devolucaoitem_id | |
1177 | - , entradaalmoxarifadoitem_id | |
1178 | - , localestoque_id | |
1179 | - , material_id | |
1180 | - , materialestoquesaldo_id | |
1181 | - , tipomovimento_id | |
1182 | - ) | |
1723 | + INSERT INTO alm_me_movimentoestoque | |
1724 | + ( id | |
1725 | + , databloqueio | |
1726 | + , datainativo | |
1727 | + , datacriacao | |
1728 | + , dataedicao | |
1729 | + , version | |
1730 | + , datamovimento | |
1731 | + , idclassereferencia | |
1732 | + , quantidade | |
1733 | + , valorfifo | |
1734 | + , valormedia | |
1735 | + , organizacao_id | |
1736 | + , dominioclassereferencia_id | |
1737 | + , material_id | |
1738 | + , materialestoque_id | |
1739 | + , materiallocalestoque_id | |
1740 | + , tipomovimento_id | |
1741 | + ) | |
1183 | 1742 | SELECT NEXTVAL('hibernate_sequence') AS id |
1184 | 1743 | , NULL AS databloqueio |
1185 | 1744 | , NULL AS datainativo |
... | ... | @@ -1187,25 +1746,23 @@ BEGIN; -- #INI :: IMPORTACAO DOS MOVIMENTO DE ESTOQUE >> MOVIMENTOESTOQUE |
1187 | 1746 | , D.DATAEDICAO AS dataedicao |
1188 | 1747 | , 0 AS "version" |
1189 | 1748 | , D.DATADEVOLUCAO AS datamovimento |
1749 | + , DI.ID AS IDCLASSEREFERENCIA | |
1190 | 1750 | , DI.QUANTIDADE AS quantidade |
1191 | 1751 | , (I.VL_NOTA_REC_ITEM/100) AS valorfifo |
1192 | 1752 | , (I.VL_NOTA_REC_ITEM/100) AS valormedia |
1193 | - , NULL AS INATIVADOR_ID | |
1194 | - , NULL AS AUTOR_ID | |
1195 | - , NULL AS EDITOR_ID | |
1196 | 1753 | , 1 AS organizacao_id |
1197 | - , NULL AS atendimentoreqconsumoitem_id | |
1198 | - , NULL AS baixaalmoxarifadoitem_id | |
1199 | - , DI.ID AS devolucaoitem_id | |
1200 | - , NULL AS entradaalmoxarifadoitem_id | |
1201 | - , (SELECT ID FROM LOCALESTOQUE LIMIT 1) AS localestoque_id | |
1754 | + , (SELECT ID FROM DOMINIO WHERE CHAVE = 'classeReferencia' AND CODIGO = 6) AS DOMINIOCLASSEREFERENCIA_ID --DEVOLUCAO | |
1755 | + , (SELECT ID FROM ALM_ESTOQUE LIMIT 1) AS localestoque_id | |
1202 | 1756 | , DI.MATERIALCONSUMO_ID AS material_id |
1203 | - , NULL AS materialestoquesaldo_id | |
1757 | + , ME.ID AS materialestoque_id | |
1758 | + , LE.ID AS materiallocalestoque_id | |
1204 | 1759 | , (SELECT ID FROM DOMINIO WHERE CHAVE = 'tipoMovimentoEstoque' AND CODIGO = 4) AS tipomovimento_id |
1205 | - FROM PUBLIC.DEVOLUCAO D | |
1206 | - INNER JOIN PUBLIC.DEVOLUCAOITEM DI ON (D.ID = DI.DEVOLUCAO_ID) | |
1760 | + FROM PUBLIC.ALM_DEVOLUCAO D | |
1761 | + INNER JOIN PUBLIC.ALM_DEV_ITEM DI ON (D.ID = DI.DEVOLUCAO_ID) | |
1207 | 1762 | INNER JOIN MATERIAL M ON (M.ID = DI.MATERIALCONSUMO_ID) |
1208 | - INNER JOIN ASIWEB.AX_NOTA_REC_ITEM I ON (D.CODIGO=I.CD_NOTA_REC AND M.CODIGO = I.CD_BEM_SERVICO); | |
1763 | + INNER JOIN ASIWEB.AX_NOTA_REC_ITEM I ON (D.CODIGO=I.CD_NOTA_REC AND M.CODIGO = I.CD_BEM_SERVICO) | |
1764 | + INNER JOIN ALM_MATERIALESTOQUE ME ON (ME.MATERIAL_ID = DI.MATERIALCONSUMO_ID) | |
1765 | + INNER JOIN PUBLIC.ALM_ME_LOCALESTOQUE LE ON (LE.MATERIALESTOQUE_ID = ME.ID AND LE.LOCALPRINCIPAL IS TRUE); | |
1209 | 1766 | COMMIT; -- #FIM :: IMPORTACAO DOS MOVIMENTO DE ESTOQUE >> MOVIMENTOESTOQUE |
1210 | 1767 | |
1211 | 1768 | BEGIN; -- #INI :: IMPORTACAO DOS MOVIMENTO DAS CONTAS DE ALMOXARIFADO >> CONTACONTABILMOVIMENTO (REVER, O CERTO ERA QUE FOSSE POR ITEM) |
... | ... | @@ -1256,7 +1813,7 @@ BEGIN; -- #INI :: IMPORTACAO DOS MOVIMENTO DAS CONTAS DE ALMOXARIFADO >> CONTAC |
1256 | 1813 | WHERE (S.VL_ENTRADA+S.VL_SAIDA)>0 |
1257 | 1814 | ORDER BY S.CD_CONTA; */ |
1258 | 1815 | |
1259 | - DO $$ BEGIN RAISE NOTICE 'Criando o contacontabilmovimento das entradas'; END;$$; | |
1816 | +/* DO $$ BEGIN RAISE NOTICE 'Criando o contacontabilmovimento das entradas'; END;$$; | |
1260 | 1817 | INSERT INTO public.contacontabilmovimento |
1261 | 1818 | ( id |
1262 | 1819 | , databloqueio |
... | ... | @@ -1431,7 +1988,7 @@ BEGIN; -- #INI :: IMPORTACAO DOS MOVIMENTO DAS CONTAS DE ALMOXARIFADO >> CONTAC |
1431 | 1988 | inner join public.atendimentoreqconsumoitem ai on (ai.id = m.atendimentoreqconsumoitem_id) |
1432 | 1989 | INNER JOIN public.requisicaoconsumoitem ri on (ri.id = ai.requisicaoconsumoitem_id) |
1433 | 1990 | inner join public.contacontabil c on (c.codigo = ri.cd_conta) |
1434 | - WHERE tipomovimento_id = (SELECT id FROM DOMINIO WHERE CHAVE = 'tipoMovimentoEstoque' and codigo = 3); | |
1991 | + WHERE tipomovimento_id = (SELECT id FROM DOMINIO WHERE CHAVE = 'tipoMovimentoEstoque' and codigo = 3); */ | |
1435 | 1992 | |
1436 | 1993 | COMMIT; -- #FIM :: IMPORTACAO DOS MOVIMENTO DAS CONTAS DE ALMOXARIFADO >> CONTACONTABILMOVIMENTO |
1437 | 1994 | ... | ... |