Olá pessoal,
Acabei de usar Java para acessar os dados do SAP B1 e me deparei com um problema, não faço ideia do que fazer.
Importei dados para o SAP B1 de um arquivo e exportei dados do SAP para um arquivo, apenas no módulo de parceiros de negócios,
está tudo bem.
Também consigo exportar dados de ORDR do banco de dados do SAP B1 para um arquivo.
Mas não consigo importar dados externos sobre o módulo de pedidos, apenas a tabela ORDR.
Tenho procurado na WEB por 2 dias e não encontro nada!
Agradeceria muito a sua grande ajuda. Poderiam me dar um exemplo, deveria ser perfeito?
REGISTRO DE ERROS sobre a operação de atualização:
!!!Erro***-Foi encontrada uma exceção COM:
Em Invocar: Atualizar
Descrição: O servidor lançou uma exceção.
com.sap.smb.sbo.wrapper.com.ComFailException: Foi encontrada uma exceção COM:
Em Invocar: Atualizar
Descrição: O servidor lançou uma exceção.
em com.sap.smb.sbo.wrapper.com.Dispatch.invokev(Método nativo)
em com.sap.smb.sbo.wrapper.com.Dispatch.invokev(Fuente desconocida)
em com.sap.smb.sbo.wrapper.com.Dispatch.callN(Fuente desconocida)
em com.sap.smb.sbo.wrapper.com.Dispatch.call(Fuente desconocida)
==========================================================
O REGISTRO DE ERROS sobre a operação de adição é semelhante:
!!!Erro***-Foi encontrada uma exceção COM:
Em Invocar: Adicionar
Descrição: O servidor lançou uma exceção.
com.sap.smb.sbo.wrapper.com.ComFailException: Foi encontrada uma exceção COM:
Em Invocar: Adicionar
Descrição: O servidor lançou uma exceção.
......
=================================================================
O seguinte é apenas um trecho de código.
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
ICompany vCompany = SapSdkHelper.getICompany();
vCompany.connect();
IDocuments aOrder = SBOCOMUtil.newDocuments(vCompany,
SBOCOMConstants.BoObjectTypes_Document_oOrders);
IDocument_Lines line = aOrder.getLines();//line deveria ser os dados na tabela rdr1
int successCount = 0;
for (String[] rowData : dataList) {
Integer key = new Integer(rowData[0]);
if (aOrder.getByKey(key)) {
aOrder.setAddress(aOrder.getAddress()+"teste");
int rr = aOrder.update();
SBOErrorMessage errMsg = vCompany.getLastError();
System.out.println(errMsg.getErrorMessage());
System.out.println(rr);
continue;
}
aOrder.setDocNum(key);
...
aOrder.setCardCode(rowData[2]);
aOrder.setCardName(rowData[3]);
aOrder.setDocTotal(Double.valueOf(rowData[4]));
aOrder.setDocType(SBOCOMConstants.BoDocumentTypes_dDocument_Items);
//aOrder.setDocCurrency("RMB");
//aOrder.setDocRate(10.1);
line.setItemCode("A00001");
line.setItemDescription("Descrição de teste");
line.setQuantity(new Double(3));
line.setPrice(new Double(3));
//line.setRate(10.1);
//line.setCurrency("RMB");
//line.add();
long rc = aOrder.add();
SBOErrorMessage errMsg = vCompany.getLastError();
System.out.println(errMsg.getErrorMessage());
System.out.println(rc);
successCount++;
}
vCompany.disconnect();