Farmacia Popular erro java.lang.nullpointerexception
Bom dia a todos !
Estou implementado as novas regras do FPopular, tudo estava bem até sexta-feira ( 18/03 ) quando o sistema começou a me retornar o seguinte erro:
java.lang.nullpointerexception
Já tentei desinstalar e instalar o certificado e tudo mais, o interessante é que não mexi em nada, apenas acrescentei os dados do vendedor e o dna da estação.
Alguem poderia me dar uma Luz...
segue abaixo trecho do codigo fontes
var Item:Integer; teste:TStringList;begin
teste := TStringList.Create;
Item := 0; SetLength(Medicamentos, rxmITENS.RecordCount);
rxMItens.First; while not rxmITENS.Eof do begin Inc( Item ); Medicamentos[Item] := MedicamentoDTO.Create; Medicamentos[Item].coCodigoBarra := rxMItens.FieldByName('BARRA').AsString; Medicamentos[Item].qtSolicitada := rxMItens.FieldByName('QTDE_SOLICITADA').AsFloat; //(Em comprimidos , se insulina colocar 1 Medicamentos[Item].vlPrecoVenda := (rxMItens.FieldByName('CA_PRECO_VENDA').AsCurrency/rxMItens.FieldByName('QTDE_VOLUMES').AsFloat); Medicamentos[Item].qtPrescrita := rxMItens.FieldByName('QTDE_PRESCRITA').AsFloat; //quantidade que o paciente vai usar por dia Medicamentos[Item].dsUnidApresentacao := rxMItens.FieldByName('QTDE_VOLUMES').AsString; Medicamentos[Item].inAutorizacaoEstorno := ''; Medicamentos[Item].inAutorizacaoMedicamento := ''; Medicamentos[Item].qtAutorizada := 0; Medicamentos[Item].qtDevolvida := 0; Medicamentos[Item].qtEstornada := 0; Medicamentos[Item].statusTransacao := ''; Medicamentos[Item].vlPrecoSubsidiadoMS := 0; Medicamentos[Item].vlPrecoSubsidiadoPaciente := 0; Medicamentos[Item].vlPrecoSubsidiadoPacientePosEstorno := 0; Medicamentos[Item].vlrSubsidiadoMSPosEstorno := 0; Medicamentos[Item].vlrTotalVendaPosEstorno := 0; rxmITENS.Next;
end;
Solicitacao := SolicitacaoDTO.Create; Solicitacao.arrMedicamentoDTO := Medicamentos; Solicitacao.coSolicitacaoFarmacia := FAlinhaStr(IntToStr(rxmMaster.FieldByName('CODIGO').AsInteger),6,'D','0'); Solicitacao.dtEmissaoReceita := TXSDateTime.Create; Solicitacao.dtEmissaoReceita.AsDateTime := deDataReceita.Date;
//cnpj da Loja Solicitacao.nuCnpj := '05356549000137'; //RetornaSoNumero(frmPrincipal.ImpFiscal.CNPJ); //CPF do Cliente Solicitacao.nuCpf := ibqCli.FieldByName('CPF').AsString; //Dados do Medico Solicitacao.nuCrm := Trim(ibqMed.FieldByName('CRM').AsString); Solicitacao.sgUfCrm := Trim(ibqMed.FieldByName('UF_CONSELHO').AsString);
Solicitacao.dnaEstacao := FIdentificaTerminal( Solicitacao.nuCnpj, Solicitacao.nuCpf, Solicitacao.nuCrm, Solicitacao.sgUfCrm,FormatDateTime('dd/mm/yyyy',deDataReceita.Date) );
if Trim(Solicitacao.dnaEstacao) = '' then begin Result := False; Exit; end;
//Dados do Vendedor Usuario.usuarioVendedor := pVendedorUsuario; Usuario.senhaVendedor := pVendedorSenha;
Autorizacao := AutorizacaoDTO.Create;
try Autorizacao := wDataSUS.executarSolicitacao(Solicitacao, Usuario); except end;
o erro ocorre após enviar o executarSOlictacao
Abraços.
Carlos H. S. Tele
Estou implementado as novas regras do FPopular, tudo estava bem até sexta-feira ( 18/03 ) quando o sistema começou a me retornar o seguinte erro:
java.lang.nullpointerexception
Já tentei desinstalar e instalar o certificado e tudo mais, o interessante é que não mexi em nada, apenas acrescentei os dados do vendedor e o dna da estação.
Alguem poderia me dar uma Luz...
segue abaixo trecho do codigo fontes
var Item:Integer; teste:TStringList;begin
teste := TStringList.Create;
Item := 0; SetLength(Medicamentos, rxmITENS.RecordCount);
rxMItens.First; while not rxmITENS.Eof do begin Inc( Item ); Medicamentos[Item] := MedicamentoDTO.Create; Medicamentos[Item].coCodigoBarra := rxMItens.FieldByName('BARRA').AsString; Medicamentos[Item].qtSolicitada := rxMItens.FieldByName('QTDE_SOLICITADA').AsFloat; //(Em comprimidos , se insulina colocar 1 Medicamentos[Item].vlPrecoVenda := (rxMItens.FieldByName('CA_PRECO_VENDA').AsCurrency/rxMItens.FieldByName('QTDE_VOLUMES').AsFloat); Medicamentos[Item].qtPrescrita := rxMItens.FieldByName('QTDE_PRESCRITA').AsFloat; //quantidade que o paciente vai usar por dia Medicamentos[Item].dsUnidApresentacao := rxMItens.FieldByName('QTDE_VOLUMES').AsString; Medicamentos[Item].inAutorizacaoEstorno := ''; Medicamentos[Item].inAutorizacaoMedicamento := ''; Medicamentos[Item].qtAutorizada := 0; Medicamentos[Item].qtDevolvida := 0; Medicamentos[Item].qtEstornada := 0; Medicamentos[Item].statusTransacao := ''; Medicamentos[Item].vlPrecoSubsidiadoMS := 0; Medicamentos[Item].vlPrecoSubsidiadoPaciente := 0; Medicamentos[Item].vlPrecoSubsidiadoPacientePosEstorno := 0; Medicamentos[Item].vlrSubsidiadoMSPosEstorno := 0; Medicamentos[Item].vlrTotalVendaPosEstorno := 0; rxmITENS.Next;
end;
Solicitacao := SolicitacaoDTO.Create; Solicitacao.arrMedicamentoDTO := Medicamentos; Solicitacao.coSolicitacaoFarmacia := FAlinhaStr(IntToStr(rxmMaster.FieldByName('CODIGO').AsInteger),6,'D','0'); Solicitacao.dtEmissaoReceita := TXSDateTime.Create; Solicitacao.dtEmissaoReceita.AsDateTime := deDataReceita.Date;
//cnpj da Loja Solicitacao.nuCnpj := '05356549000137'; //RetornaSoNumero(frmPrincipal.ImpFiscal.CNPJ); //CPF do Cliente Solicitacao.nuCpf := ibqCli.FieldByName('CPF').AsString; //Dados do Medico Solicitacao.nuCrm := Trim(ibqMed.FieldByName('CRM').AsString); Solicitacao.sgUfCrm := Trim(ibqMed.FieldByName('UF_CONSELHO').AsString);
Solicitacao.dnaEstacao := FIdentificaTerminal( Solicitacao.nuCnpj, Solicitacao.nuCpf, Solicitacao.nuCrm, Solicitacao.sgUfCrm,FormatDateTime('dd/mm/yyyy',deDataReceita.Date) );
if Trim(Solicitacao.dnaEstacao) = '' then begin Result := False; Exit; end;
//Dados do Vendedor Usuario.usuarioVendedor := pVendedorUsuario; Usuario.senhaVendedor := pVendedorSenha;
Autorizacao := AutorizacaoDTO.Create;
try Autorizacao := wDataSUS.executarSolicitacao(Solicitacao, Usuario); except end;
o erro ocorre após enviar o executarSOlictacao
Abraços.
Carlos H. S. Tele
Carlos H.s.teles
Curtidas 0