Child pages
  • Procedimento Início de Safra - Várias instâncias no banco e todas com safra finalizada.

Produto

Datasul

Versões


Avaliação

1

Sintoma

Procedimento Início de Safra - Várias instâncias no banco e todas com safra finalizada.

Environment

Unspecified

Causa


Solução

1 - Introdução


Os Procedimentos de Inicio de Safra têm por finalidade limpar tabelas para o inicio de uma nova safra. Este procedimento deve ser realizado somente se ainda não iniciou a nova safra. Recomendamos que isso seja feito alguns dias antes do início da safra seguinte. Os módulos envolvidos nestes procedimentos são SPA, PROCOL, RECMAP, CFGCEN e Módulos de Apoio.

Os procedimentos abaixo deverão ser executados pelo DBA da empresa ou profissional responsável pelo setor de informática.

Recomendamos efetuar backup da base de dados do PIMS/CS antes de realizar os procedimentos descritos abaixo.

Os procedimentos de deleção deverão ser realizados caso todos os fechamentos referentes a ordens de corte, recepção/análise de matéria-prima foram realizados com sucesso e não mais haja a necessidade de reprocessamentos ou consultas de informações analíticas nestes aplicativos.


2 - Revisar Cadastros de Safras e Calendário


No aplicativo Configuração Central (CFGCEN.EXE) revisar os seguintes cadastros instancia por instancia:


Configuração Central àTabelasà Safras

  • cadastro da safra que está finalizando: data final de produção e final de safra
  • cadastro da safra que está iniciando: todos os períodos (inicio/fim safra e inicio/fim produção)
  • cadastrar a safra posterior a que se iniciará.


Configuração Central àTabelasàCalendário: Nesta opção poderá criar o calendário manualmente, o calendário deverá ser cadastrado para a próxima safra e a posterior. Para gerar o calendário automaticamente poderá utilizar o processo Configuração Central àProcessamentoàGeração de Calendário.


3 - Alterar via aplicativo Parâmetros PIMS em todas as instancias (PAR_PIMS.EXE -> Parâmetros -> Tabela)


-Seção: RCMP_BAC, Entrada: NO_ULT_ANALIS, se o valor estiver com 999999, deverá mantê-lo, caso contrario, atualizá-lo com 0 (zero), indicando que a numeração é automática.

-Seção: RCMP_CITRU, Entrada: NO_ULT_ANALIS, se o valor estiver com 999999, deverá mantê-lo, caso contrario, atualizá-lo com 0 (zero), indicando que a numeração é automática.

-Seção: RCMP_CAR, Entrada: ULT_CERTIFICADO, informar o valor zero (0) em todos os estados, exceto São Paulo. No estado de São Paulo, a partir da versão 12.1.5 do PIMS, o sistema inicializa a numeração automaticamente ao atingir o número máximo de 999.999 de acordo com o decreto 61.104.

-Seção: RCMP_CAR, Entrada: NO_PESAGEM_ENTR, informar o valor zero (0)

-Seção: RCMP_IMP, Entrada: NO_ULT_AMOS, atualizar o valor com zero (0)

-Seção: RCMP_IMP, Entrada: NO_ANL_MIN_GEN, atualizar o valor com zero (0)

-Seção: RCMP_IMP, Entrada: NO_ANL_BRCV_GEN, atualizar o valor com zero (0)

-Seção: RCMP_SORGO, Entrada: NO_ULT_LIBERACAO, atualizar o valor com zero (0)

-Seção: RCMP, Entrada: NO_ULT_DOCUMENTO, atualizar o valor com zero (0)

-Seção: RCMP, Entrada: NO_ULT_PRE_GUIA, atualizar o valor com zero (0)

-Seção: RCMP_CAR, Entrada: NO_PESAGEM_ENTR, atualizar o valor com zero (0)

-Seção: RCMP_CAR, Entrada: NO_PESAGEM_SAID, atualizar o valor com zero (0)

-Seção: RCMP_IMP, Entrada: NO_ULT_IMP_TOT , atualizar o valor com zero (0)

-Seção: PRCL_LIB, Entrada: NO_FINAL, este parâmetro indica a partir de que numero irá iniciar a numeração das liberações de transporte de cana. Ele deve ser atualizado com intervalos para cada instancia.

Exemplo:

instancia ‘A’ começa a numeração das liberações a partir de 1

instancia ‘B’ começará a partir da liberação 150000

instancia ‘C’ começará a partir da liberação 300000

e assim por diante. Desta maneira ao gerar as liberações uma instancia gerará uma sequência diferente da outra não ocorrendo assim duplicação.

Para ter certeza que não terá problemas com os intervalos poderá executar comando abaixo. No resultado do comando terá a quantidade de liberações que foram utilizadas na safra que está se encerrando e tomar como base essa quantidade para cada instancia.


select instancia, (max(no_liberacao) - min(no_liberacao) )

from apt_cargas

group by instancia


Qualquer dúvida, referente a esse procedimento, favor abrir um chamado no portal TOTVS.


-Seção: PRCL_ANM, Entrada: NO_AMOS_MULT, atualizar com valor 200000

-Seção: GERAIS, Entrada: CD_SAFRA_FECH, atualizar com código da safra que está encerrando


4 - Tabelas para Pré – Análise nas Unidades que utilizam Automação do PCTS via TRD


Antes de executar os procedimentos abaixo, substituir os filtros referente a data 'xx/xx/xxxx' pelo último dia da safra que encerrou na instancia e substituir ‘XXXXX’ pelo código da instancia.

Os comandos devem ser executados instancia por instancia, pois a data do último dia da safra que encerrou pode ser diferente.


delete from ORDEM_MAT where dt_operacao <=to_date('xx/xx/xxxx', 'dd/MM/yyyy') and instancia=‘XXXXX’;

delete from MATUR_LIB where dt_geracao<=to_date('xx/xx/xxxx','dd/MM/yyyy') and instancia=‘XXXXX’;

delete from MATUR_LAB where NO_ANALISE not in (select no_analise from matur_lib where instancia=‘XXXXX’) and instancia=‘XXXXX’;

delete from ORD_MAT_DE where dt_operacao <=to_date('xx/xx/xxxx', 'dd/MM/yyyy') and instancia=‘XXXXX’;

commit;


5 – Deleção de tabelas opcionais


As tabelas abaixo têm deleção opcional de acordo com as definições de cada empresa. Estas tabelas são instanciadas.


COTAS_FORNEC - Tabela de Cotas Diárias de Fornecedores

COTAS_PRIORI - Tabela de Cotas para Rateio Prioritário

COTAS_RATEIO               - Tabela de Rateio em Toneladas – Nível (fundo/fazenda/etc.)

COTAS_RATEIO2 - Tabela de Rateio em Toneladas – Nível2 (gleba/setor/etc.)

CTR_TRAFEGO - Controle de Tráfego

CTR_MSG_EQPTO - Mensagem para o Equipamento no momento do Despacho 

TRAF_EQPARADO – Equipamentos parados para o controle de trafego

TRAF_FILADESP - Fila de Despacho para Controle de Tráfego

TRAF_FILAENT - Tabela de Fila de Entrada do Trafego

TRAF_OUTRAUNID - Tabela para Controle de Trafego com Replicação do BD

TRAF_PATIO - Tabela para Trafego de Equipamento dentro do Patio

TRAF_ROTAS - Cadastro de Rotas para o Controle de Trafego


6 – Execução de Scripts


Segue abaixo relação dos scripts a serem executados. Antes é preciso substituir xxxx pela safra finalizada. Por exemplo: 2011, 21112, etc.


create table QUEIMA_ACEIT_xxxx as select * from QUEIMA_ACEIT;

create table QUEIMA_DE_xxxx as select * from QUEIMA_DE;

create table QUEIMA_HE_xxxx as select * from QUEIMA_HE;

create table LOG_QUEIMA_DE_xxxx as select * from LOG_QUEIMA_DE;

create table LOG_QUEIMA_HE_xxxx as select * from LOG_QUEIMA_HE;

create table LIBER_COLH_xxxx as select * from LIBER_COLH;

create table HISTQUEIMA_xxxx as select * from HISTQUEIMA;

create table HISTPRDHR_xxxx as select * from HISTPRDHR;

create table APT_IMP_DE_xxxx as select * from APT_IMP_DE;

create table APT_IMP_HE_xxxx as select * from APT_IMP_HE;

create table APT_IMPUREZA_xxxx as select * from APT_IMPUREZA;

create table APT_CANC_ANL_xxxx as select * from APT_CANC_ANL;

create table APT_IMP_TOTAL_xxxx as select * from APT_IMP_TOTAL;

create table APT_IMPUR_GEN_xxxx as select * from APT_IMPUR_GEN;

create table APT_BRC_VOL_GEN_xxxx as select * from APT_BRC_VOL_GEN;

create table APT_CARGAS_PESOS_xxxx as select * from APT_CARGAS_PESOS;

create table APT_CARGAS_LOC_xxxx as select * from APT_CARGAS_LOC;

create table APT_CARGAS_RAT_xxxx as select * from APT_CARGAS_RAT;

create table APT_CARGAS_IMAGENS_xxxx as select * from APT_CARGAS_IMAGENS;

create table APT_CARGAS_REC_xxxx as select * from APT_CARGAS_REC;

create table APT_CARGAS_REC_FAT_xxxx as select * from APT_CARGAS_REC_FAT;

create table APT_CARGAS_REC_OCORR_xxxx as select * from APT_CARGAS_REC_OCORR;

create table APT_CARGAS_OCORR_xxxx as select * from APT_CARGAS_OCORR;

create table APT_CARGAS_OCORR_ANL_xxxx as select * from APT_CARGAS_OCORR_ANL;

create table APT_CARGAS_xxxx as select * from APT_CARGAS;

create table VALIDA_NUM_ANALISE_xxxx as select * from VALIDA_NUM_ANALISE;

create table APT_CARGAS_NF_xxxx as select * from APT_CARGAS_NF;

create table VALIDA_TICKET_RASTREIO_xxxx as select * from VALIDA_TICKET_RASTREIO;


alter table APT_CANC_ANL_xxxx add constraint APT_CANC_ANL_xxxx_PK primary key   (INSTANCIA,NO_LIBERACAO,NO_ANALISE,CD_MOT_CANC,FG_TP_ANALISE);


alter table APT_CARGAS_xxxx add constraint APT_CARGAS_xxxx_PK primary key  (INSTANCIA,NO_LIBERACAO);


alter table APT_CARGAS_PESOS_xxxx add constraint APT_CARGAS_PESOS_xxxx_PK primary key  (INSTANCIA,FG_PROCESSO,CD_UNID_IND,NO_PESAGEM,NO_PLATAFORMA);


alter table APT_CARGAS_LOC_xxxx add constraint APT_CARGAS_LOC_xxxx_PK primary key  (INSTANCIA,NO_LIBERACAO,CD_SAFRA,CD_UPNIVEL1,CD_UPNIVEL2,CD_UPNIVEL3);


alter table APT_CARGAS_RAT_xxxx add constraint APT_CARGAS_RAT_xxxx_PK primary key  (INSTANCIA,NO_LIBERACAO,NO_SEQUENCIA);


alter table APT_CARGAS_IMAGENS_xxxx add constraint APT_CARGAS_IMAGENS_xxxx_PK primary key  (INSTANCIA,NO_LIBERACAO,FG_ORIGEM,NO_SEQUENCIA);


alter table APT_CARGAS_REC_xxxx add constraint APT_CARGAS_REC_xxxx_PK primary key  (INSTANCIA,NO_LIBERACAO,NO_SEQUENCIA,CD_TP_RECURSO,CD_EQUIPTO,CD_OPERADOR);


alter table APT_CARGAS_REC_FAT_xxxx add constraint APT_CARGAS_REC_FAT_xxxx_PK primary key (INSTANCIA,NO_LIBERACAO,NO_SEQUENCIA,CD_TP_RECURSO,CD_EQUIPTO,CD_OPERADOR);


alter table APT_CARGAS_REC_OCORR_xxxx add constraint APT_CARGAS_REC_OCORR_xxxx_PK primary key  (INSTANCIA,NO_LIBERACAO,NO_SEQUENCIA,NO_OCORRENCIA);


alter table APT_CARGAS_OCORR_xxxx add constraint APT_CARGAS_OCORR_xxxx_PK primary key (INSTANCIA,NO_LIBERACAO,NO_SEQUENCIA);


alter table APT_CARGAS_OCORR_ANL_xxxx add constraint APT_CARGAS_OCORR_ANL_xxxx_PK primary key (INSTANCIA,NO_LIBERACAO,NO_SEQUENCIA);


alter table APT_IMPUREZA_xxxx add constraint APT_IMPUREZA_xxxx_PK primary key  (INSTANCIA,CD_TRANSP,CD_SIST_COLH,CD_EQUIPTO,CD_FUNC,DT_AMOSTRA,HR_AMOSTRA,DT_MOVTO,CD_FREN_TRAN,FG_TP_IMPUR);


alter table APT_IMP_DE_xxxx add constraint APT_IMP_DE_xxxx_PK primary key  (INSTANCIA,NO_AMOSTRA,CD_IMPUREZA);


alter table APT_IMP_HE_xxxx add constraint APT_IMP_HE_xxxx_PK primary key  (INSTANCIA,NO_AMOSTRA);


alter table APT_IMP_TOTAL_xxxx add constraint APT_IMP_TOTAL_xxxx_PK primary key  (INSTANCIA,NO_ANALISE);


alter table APT_IMPUR_GEN_xxxx add constraint APT_IMPUR_GEN_xxxx_PK primary key  (INSTANCIA,NO_ANALISE);


alter table APT_BRC_VOL_GEN_xxxx add constraint APT_BRC_VOL_GEN_xxxx_PK primary key  (CD_UNID_IND,NO_ANALISE,FG_TP_ANALISE);


alter table HISTPRDHR_xxxx add constraint HISTPRDHR_xxxx_PK primary key  (CD_REG,DT_HISTORICO,CD_UNID_IND,CD_EMPRESA,CD_TP_PROPR,DT_ENTRADA,HR_HISTORICO);


alter table HISTQUEIMA_xxxx add constraint HISTQUEIMA_xxxx_PK primary key  (DT_HISTORICO,CD_UNID_IND,CD_EMPRESA,NO_QUEIMA);


alter table QUEIMA_ACEIT_xxxx add constraint QUEIMA_ACEIT_xxxx_PK primary key  (INSTANCIA,NO_QUEIMA,CD_SAFRA,CD_UPNIVEL1,CD_UPNIVEL2,CD_UPNIVEL3);


alter table QUEIMA_DE_xxxx add constraint QUEIMA_DE_xxxx_PK primary key  (NO_QUEIMA,CD_SAFRA,CD_UPNIVEL1,CD_UPNIVEL2,CD_UPNIVEL3);


alter table QUEIMA_HE_xxxx add constraint QUEIMA_HE_xxxx_PK primary key  (NO_QUEIMA);


alter table LIBER_COLH_xxxx add constraint LIBER_COLH_xxxx_PK primary key  (CD_SAFRA,CD_UPNIVEL1,CD_UPNIVEL2,CD_UPNIVEL3,CD_JUSTIF,DT_LIBERACAO,NO_QUEIMA, CD_INSUMO);


alter table VALIDA_NUM_ANALISE_ xxxx add constraint VALIDA_NUM_ANALISE_xxxx_PK primary key  (INSTANCIA, NO_ANALISE, TIPO_ANALISE);


alter table APT_CARGAS_NF_ xxxx add constraint APT_CARGAS_NF_PK_ xxxx primary key  (INSTANCIA, NO_LIBERACAO, NO_SEQUENCIA);


alter table APT_CANC_ANL_xxxx add constraint APT_CANC_ANL1_FK_xxxx foreign key  (INSTANCIA,NO_LIBERACAO) references APT_CARGAS_xxxx on delete cascade;


alter table APT_CARGAS_LOC_xxxx add constraint APT_CARGAS_LOC1_FK_xxxx foreign key  (INSTANCIA,NO_LIBERACAO) references APT_CARGAS_xxxx on delete cascade;


alter table APT_CARGAS_RAT_xxxx add constraint APT_CARGAS_RAT1_FK_xxxx foreign key  (INSTANCIA,NO_LIBERACAO) references APT_CARGAS_xxxx on delete cascade;


alter table APT_CARGAS_IMAGENS_xxxx add constraint APT_CARGAS_IMAGENS1_FK_APT_CAR_xxxx foreign key  (INSTANCIA,NO_LIBERACAO) references APT_CARGAS_xxxx on delete cascade;


alter table APT_CARGAS_REC_xxxx add constraint APT_CARGAS_REC1_FK_xxxx foreign key  (INSTANCIA,NO_LIBERACAO) references APT_CARGAS_xxxx on delete cascade;


alter table APT_CARGAS_REC_FAT_xxxx add constraint APT_CARGAS_REC_F1_FK_xxxx foreign key  (INSTANCIA,NO_LIBERACAO) references APT_CARGAS_xxxx on delete cascade;


alter table APT_IMP_DE_xxxx add constraint APT_IMP_DE1_FK_HE_xxxx foreign key  (INSTANCIA,NO_AMOSTRA) references APT_IMP_HE_xxxx on delete cascade;


alter table APT_IMP_TOTAL_xxxx add constraint APT_IMP_TOT1_FK_xxxx foreign key  (INSTANCIA,NO_LIBERACAO) references APT_CARGAS_xxxx on delete cascade;


alter table QUEIMA_ACEIT_xxxx add constraint QUEIMA_ACEIT1_FK_HE_xxxx foreign key  (NO_QUEIMA) references QUEIMA_HE_xxxx on delete cascade;


alter table QUEIMA_DE_xxxx add constraint QUEIMA_DE1_FK_HE_xxxx foreign key  (NO_QUEIMA) references QUEIMA_HE_xxxx on delete cascade;


alter table LIBER_COLH_xxxx add constraint LIBER_COLH1_FK_QUEIMA_HE_xxxx foreign key  (NO_QUEIMA) references QUEIMA_HE_xxxx on delete cascade;


alter table VALIDA_TICKET_RASTREIO_xxxx add constraint VALIDA_TICKET_RASTREIO_xxxx_PK primary key  (INSTANCIA,NO_TICKET_RASTREIO);


Update FUNCIONARS set qt_max_etiq = 0, qt_etiq_disp = 0, qt_cana_ent = 0;

Update EQUIP_RECURS set qt_max_etiq=0;

Update FUNC_RECURSO set qt_max_etiq = 0;

Update PARAMETROS set VALOR = 'xxxx' where secao='GERAIS' and entrada='CD_SAFRA_FECH';

Update SAFRAS set DE_COMP_TBL = '_xxxx' where CD_SAFRA = 'xxxx';


truncate table ESTQUSINA;

truncate table ESTQCAMPO;

truncate table ESTQCAMPLOC;

truncate table ESTQBALSA;

truncate table LIBERACAO;

truncate table QUEIMA_ACEIT;

delete from QUEIMA_DE;

delete from  QUEIMA_HE;

delete from LOG_QUEIMA_DE;

delete from  LOG_QUEIMA_HE;

delete from  LIBER_COLH;

truncate table HISTQUEIMA;

truncate table HISTPRDHR;

truncate table PARADUSINA;

truncate table APT_IMP_DE;

delete from APT_IMP_HE;

truncate table APT_IMPUREZA;

truncate table APT_CANC_ANL;

truncate table LOG_APT_CARGAS_ANL;

truncate table LOG_APT_CARGAS_PROC;

truncate table LOG_APT_CARGAS_RAT;

truncate table LOG_APT_CARGAS_REC;

truncate table LOG_APT_CARGAS;

truncate table LOG_OCOR_CARGAS;

truncate table APT_IMP_TOTAL;

truncate table APT_IMPUR_GEN;

truncate table APT_BRC_VOL_GEN;

truncate table APT_CARGAS_PESOS;

truncate table APT_CARGAS_LOC;

truncate table APT_CARGAS_NF;

truncate table APT_CARGAS_RAT;

truncate table APT_CARGAS_IMAGENS;

truncate table APT_CARGAS_REC;

truncate table APT_CARGAS_REC_FAT;

truncate table APT_CARGAS_VIAGENS;

truncate table APT_CARGAS_REC_OCORR;

truncate table APT_CARGAS_OCORR;

truncate table APT_CARGAS_OCORR_ANL;

truncate table PARADA_FLUX;

truncate table CARG_EST;

delete from APT_CARGAS;

truncate table WWW_CERT_PESAGEM;

truncate table CTR_TRAFEGO;

truncate table VALIDA_NUM_ANALISE;

truncate table PRE_GUIA_DE;

truncate table PRE_GUIA_HE;

truncate table WWW_BRANCO_VOLATIL;

truncate table WWW_CARGAS;

truncate table WWW_CARGAS_RAT;

truncate table WWW_CARGAS_REC;

truncate table WWW_IMP_DE;

truncate table WWW_IMP_HE;

truncate table WWW_QUEIMA_HE;

truncate table VALIDA_TICKET_RASTREIO;

delete from UPN_ORI_TROC;

delete from OC_ORI_TROC;

delete from SCOLH_ORI_TROC;



commit;


analyze table ESTQUSINA estimate statistics;

analyze table ESTQCAMPO estimate statistics;

analyze table ESTQCAMPLOC estimate statistics;

analyze table ESTQBALSA estimate statistics;

analyze table LIBERACAO estimate statistics;

analyze table QUEIMA_DE estimate statistics;

analyze table QUEIMA_ACEIT estimate statistics;

analyze table QUEIMA_HE estimate statistics;

analyze table LOG_QUEIMA_DE estimate statistics;

analyze table LOG_QUEIMA_HE estimate statistics;

analyze table LIBER_COLH estimate statistics;

analyze table HISTQUEIMA estimate statistics;

analyze table HISTPRDHR estimate statistics;

analyze table PARADUSINA estimate statistics;

analyze table APT_IMP_DE estimate statistics;

analyze table APT_IMP_HE estimate statistics;

analyze table APT_IMPUREZA estimate statistics;

analyze table APT_CANC_ANL estimate statistics;

analyze table LOG_APT_CARGAS estimate statistics;

analyze table LOG_OCOR_CARGAS estimate statistics;

analyze table APT_IMP_TOTAL estimate statistics;

analyze table APT_IMPUR_GEN estimate statistics;

analyze table APT_BRC_VOL_GEN estimate statistics;

analyze table APT_CARGAS_PESOS estimate statistics;

analyze table APT_CARGAS_LOC estimate statistics;

analyze table APT_CARGAS_RAT estimate statistics;

analyze table APT_CARGAS_IMAGENS estimate statistics;

analyze table APT_CARGAS_REC estimate statistics;

analyze table APT_CARGAS_REC_FAT estimate statistics;

analyze table APT_CARGAS_VIAGENS estimate statistics;

analyze table APT_CARGAS_REC_OCORR estimate statistics;

analyze table APT_CARGAS_OCORR estimate statistics;

analyze table APT_CARGAS_OCORR_ANL estimate statistics;

analyze table PARADA_FLUX estimate statistics;

analyze table CARG_EST estimate statistics;

analyze table APT_CARGAS estimate statistics;

analyze table WWW_CERT_PESAGEM estimate statistics;

analyze table CTR_TRAFEGO estimate statistics;

analyze table MATUR_LIB estimate statistics;

analyze table MATUR_LAB estimate statistics;

analyze table ORDEM_MAT estimate statistics;

analyze table ORD_MAT_DE estimate statistics;

analyze table VALIDA_NUM_ANALISE estimate statistics;

analyze table APT_CARGAS_NF estimate statistics;

analyze table VALIDA_TICKET_RASTREIO estimate statistics;

Observações