11052 - Execução de regra dando erro com a ação Srv.AltEmpFil
Problema: Descrição do Problema: Utilizando uma regra através do menu Recursos/Implementações/Regras/Executar, está dando a seguinte mensagem de erro:
Troca de empresa ERRO: Erro ao trocar para empresa 2, filial 1:
O cursor não pode encontrar os valores (2;09030001) nos campos (CodEmp;CodPro)
passado em SortedCON_E075PROForECodPro (TRtSortedDataSet) ligado em CON_E075PRO (TRtNewTable)
(C:\Workspace583\pkg\rts02\RtSortDataSet.pas, line 892)
Quando ocorre / onde se aplica: Regras
Solução: Solução: Esta situação ocorre quando está sendo feita a troca de empresa e filial e existem telas ativas no momento.
Dessa forma, sempre terá que cuidar ao utilizar esta ação em uma regra local com essa ação.
A função SID AltEmpFil foi construída para ser utilizada apenas no SapiensServer ou na instância remota do aplicativo, pois a cada ação efetuada a empresa e filial é ajustada. Porém, a execução no modo local dessa função faz com que ocorra uma característica indesejável, que irá trocar a empresa e filial logada sem todos os ajustes necessários quando se troca a empresa e filial via menu ou tecla de atalho. Os ajustes, na estação, seriam o fechamento de todas as janelas, a limpeza dos dados em memória para busca da nova empresa/filial, etc. O que seria também inviável caso seja disparada por uma regra de algum processo.
Nesse caso, não recomendamos o uso da função SID AltEmpFil como Serviço executado localmente. Porém, para ser executada no servidor ou agendada no servidor, não há problema, pois a execução é dedicada para aquele serviço. Na estação, o problema é que o usuário está operando o Sistema e existem várias dependências da empresa e filial logada.
Uma opção, além da execução remota, é a execução de Serviços nativos (não serviços que executam funções SID), desde que seja avaliado se o serviço suporta empresa e filiais diferentes das logadas (o serviço exige a informação da empresa e filial que deve operar).
Troca de empresa ERRO: Erro ao trocar para empresa 2, filial 1:
O cursor não pode encontrar os valores (2;09030001) nos campos (CodEmp;CodPro)
passado em SortedCON_E075PROForECodPro (TRtSortedDataSet) ligado em CON_E075PRO (TRtNewTable)
(C:\Workspace583\pkg\rts02\RtSortDataSet.pas, line 892)
Quando ocorre / onde se aplica: Regras
Solução: Solução: Esta situação ocorre quando está sendo feita a troca de empresa e filial e existem telas ativas no momento.
Dessa forma, sempre terá que cuidar ao utilizar esta ação em uma regra local com essa ação.
A função SID AltEmpFil foi construída para ser utilizada apenas no SapiensServer ou na instância remota do aplicativo, pois a cada ação efetuada a empresa e filial é ajustada. Porém, a execução no modo local dessa função faz com que ocorra uma característica indesejável, que irá trocar a empresa e filial logada sem todos os ajustes necessários quando se troca a empresa e filial via menu ou tecla de atalho. Os ajustes, na estação, seriam o fechamento de todas as janelas, a limpeza dos dados em memória para busca da nova empresa/filial, etc. O que seria também inviável caso seja disparada por uma regra de algum processo.
Nesse caso, não recomendamos o uso da função SID AltEmpFil como Serviço executado localmente. Porém, para ser executada no servidor ou agendada no servidor, não há problema, pois a execução é dedicada para aquele serviço. Na estação, o problema é que o usuário está operando o Sistema e existem várias dependências da empresa e filial logada.
Uma opção, além da execução remota, é a execução de Serviços nativos (não serviços que executam funções SID), desde que seja avaliado se o serviço suporta empresa e filiais diferentes das logadas (o serviço exige a informação da empresa e filial que deve operar).