| ♥ 0 | Estou num processo de migração de um cliente da V9 para a v10 e gostaria de perceber que análises ao nível de inventário devo realizar para que os valores/quantidades migrem corretamente. Marked as spam |
| Private answer Sugerimos um conjunto de verificações pré migração recorrendo à execução de scripts SQL para validação e correção ainda na V9, de forma a evitar erros. 1. Verificar se existem movimentos de documentos que estão marcados para não movimentar stock, correndo a Script1 (ver anexos). Caso existam registos identificados na Script1, devem ser executados os comandos devolvidos, pois apesar dos documentos já não movimentarem stock os movimentos existem e terão de ser atualizados.
2. Validar se existem fechos de mês recorrendo à query: select * from FechosMesCabec -- Se existirem fechos de mês, devem ser removidos, pois os mesmos são ignorados na migração. A PRIMAVERA aconselha o uso do Arquivo de dados conforme pode ser validado os benefícios no artigo do Help center. delete from FechosMesCabec delete from FechosMesLinhas 3. Verificar se o PCM é GLOBAL através da configuração no administrador ou do Campo PCMPorArmazem a 0 apartir da query: select PCMPorArmazem, * from ParametrosGCP
3.1 Se PCM é Global, validar o PrecoUnitario das transferências -- O Valor do PrecoUnitario deve estar a PCM (para que os valores da entrada sejam valorizadas ao PCM da saída) select distinct LS.TipoDoc, LS.PrecoUnitario, DS.PrecoUnitario from LinhasSTK LS INNER JOIN DocumentosStk DS ON LS.tipodoc=DS.Documento where modulo='S' and DS.TipoDocumento=3 AND LS.PrecoUnitario<>6 -- Vamos colocar o valor do PrecoUnitario dos documentos de Transferência com PCM Update LS Set PrecoUnitario=6 from LinhasSTK LS INNER JOIN DocumentosStk DS ON LS.tipodoc=DS.Documento where modulo='S' and DS.TipoDocumento=3 AND LS.PrecoUnitario<>6
4. Verificar se existem movimentos de saída marcados para Atualizar PCM
Select * from LinhasSTK where EntradaSaida='S' And ActPCM=1 AND TipoDoc not in ('AIN', 'DES', 'VPT')
-- Os movimentos de saída não devem atualizar PCM Update LinhasSTK Set ActPCM=0 where EntradaSaida='S' And ActPCM=1 AND TipoDoc not in ('AIN', 'DES', 'VPT') 5. Verificar se existem movimentos sem armazém definido, mas com quantidade com a query: select * from LinhasSTK WITH (NOLOCK) where Localizacao is null and Quantidade<>0
-- Corrigir os movimentos com o valor do Armazém Update LinhasSTK Set Localizacao=Armazem where Localizacao is null and Quantidade<>0
6. Verificar as datas mínima e máxima da tabela LinhasStk recorrendo aos seguintes pontos: -- verificar a data mínima da LinhasStk select min(data) from LinhasStk
-- verificar a data máxima da LinhasStk select max(data) from LinhasStk
-- Corrigir valor da data Minima select LinhasStk.data, LinhasDoc.Data, LinhasDoc.DataSaida, *
-- Update LinhasStk set Data=LinhasDoc.Data from LinhasSTK inner join LinhasDoc on LinhasSTK.IdLinhaOrig=LinhasDoc.Id where LinhasStk.data='1899-12-30 00:00:00.000'
7. Verificar se existem CabecStk com Moeda a NULO através da seguinte query: select * from CabecSTK where Moeda IS NULL Caso sejam encontrado registos devem ser corrigidos. 8. Verificar se existem LinhasStk sem CabecStk através da Script2 (ver anexos).
9. Verificar a existência de registos com Stock Negativo com a query: select * from LinhasSTK where StockNegativo=1 Caso existam aconselhamos a correção, pois a forma de valorização da V9 é diferente da V10, quando há stock negativo.
10. Correr o recalculo com a Script3 (ver anexos). Marked as spam | |
| Private answer Bom dia! No ponto 9. "Verificar a existência de registos com Stock Negativo com a query: select * from LinhasSTK where StockNegativo=1 Caso existam aconselhamos a correção, pois a forma de valorização da V9 é diferente da V10, quando há stock negativo." Como deve ser feita a correção dos registos com stock negativo?
Desde já obrigada
Marked as spam Comments Boa tarde,
Como resolver o ponto 9, de forma automatica?
Tenho 454 mil linhas para corrigir? |