Importar Xml de clientes a SAP B1

Tengo el siguiente código para importar mediante xml un cliente a SAP B1

// Connects to the SAP Business One company database.
                oCompany.Connect();
                MessageBox.Show("CONECTADO..!!");

                int count = oCompany.GetXMLelementCount("C:\\xmlclient.xml");

                //oCompany.StartTransaction(); 
                for (i = 0; i < count; i++)
                {
                    oCompany.XmlExportType = SAPbobsCOM.BoXmlExportTypes.xet_ExportImportMode;

                    if ((oCompany.GetXMLobjectType("C:\\xmlclient.xml", i)) == (SAPbobsCOM.BoObjectTypes.oBusinessPartners))
                    {
                        oBusinessPartner = ((SAPbobsCOM.BusinessPartners)(oCompany.GetBusinessObjectFromXML("C:\\xmlclient.xml", i)));

                        if (oBusinessPartner.Add() == 0){
                            MessageBox.Show("Cliente importado con exito..!!");
                        }else {
                        MessageBox.Show(oCompany.GetLastErrorDescription());
                        }
                    }                   
                }

y intento importar el siguiente xml:

Y me da un error que dice: La propiedad LicTradNum(El RUT en SAP) es invalidad
Se la quito y me dice que necesita el RUT para insertar un cliente…

El RUC es tan corto? 3 números nomas?


Relacionado: Valiación Archivos XML SAP B1

Ya lo cambie y nada. Hay esta el error

En México el RFC (RUC) debe tener una longitud de 12 o 13 caracteres y SAP valida de manera nativa que el dato entrante tenga la longitud correcta.

Desconozco si en tu pais (no tienes presentación por ello desconozco de donde eres) el RUC es de 9 dígitos como el dato que pretendes ingresar.

Saludos.

2 Me gusta

Si es de nueve, soy de venezuela, y yo lo estoy haciendo viendo otros ejemplos ya insertados en SAP

Un ejercicio interesante sería crear un socio de negocios directamente en Business One exactamente con los datos que muestras, ni más ni menos y observar como se comporta Business One.

1 me gusta

Si ya lo hice tambien y si se agrego… tiene que ver con el XML o el codigo

Yo me inclino a que le faltan datos a tu XML, uno que se me viene a la mente es el tipo de Socio de Negocios.

1 me gusta

Ya lo agregue y me dijo lo mismo referente al RUT

Disculpa, no encuentro las palabras para mencionarte esto pero al ser tu el interesado en solucionar el problema se esperaría que realizaras una serie de pruebas combinando varias alternativas y no realizar solo lo que te comentamos, somo un apoyo, sería agradable que demostraras un poco más de entusiasmo.

Sobre tu problema, para comenzar a trabajar con la DI-API debes conocer el funcionamiento básico del sistema de lo contrario ¿cómo pretendes programar algo que no conoces? lo menciono porque en tu último ejemplo pretendes crear un cliente sin nombre, esto no es lógico.

Suerte con tu tema. Saludos.

2 Me gusta

Solo te estoy demostrando que no funciona, para que veas que estoy tomando el consejo que me estas dando… ya la mayoria de las pruebas las realice. yo realice ya la inserción de facturas. pero no se cual es mi error en esta parte. Si estoy aqui es porque no encuentro mas por donde tomar camino. no porque no sepa trabajar con la DI-API.

Con lo otro. en el SAP B1 lo unico que requiere para crear un cliente o socio de negocio es el codigo y el RUT por eso es lo unico que coloco. Ya tambien probe colocando todos los demas registro de la tabla y me indica el mismo error del RUT

Estimado @jesusdja

Has probado a cargar los socios de negocios con el DTW ??, es muy fácil armar las plantillas, ademas que hay ejemplos de como llenarlas.

JAMS

1 me gusta

DTW no me funciona porque yo necesito que se haga de forma automatica por medio de un Add-Ons que es lo que estoy creando

Ya está, veremos qué responden los gurues de SAP:
h_tps://answers.sap.com/questions/253918/import-xml-from-customers-to-sap-b1.html

1 me gusta

Hola estimado.
Te sugiero que le coloques 12 caracteres al numero RUT. Hasta donde yo sé eso es lo que te exige SAP y no perdés nada con probar.

Además es importante que verifiques en el SP_TransactionNotification de SAP que no hay ninguna validacion activa(es decir por cuestiones de prueba, deshabilita todo lo relacionado a Socios de negocios) y prueba de nuevo.

Saludos.

1 me gusta

Hola @saufondez Saludos.

Esta parte no la entendi:

“Además es importante que verifiques en el SP_TransactionNotification de SAP que no hay ninguna validacion activa(es decir por cuestiones de prueba, deshabilita todo lo relacionado a Socios de negocios) y prueba de nuevo.”

que es : SP_TransactionNotification de SAP

En resumen el SP_Transaction_Notification es un store procedure de SQL de la base de datos de SAP B1 donde tu puedes colocar ciertas restricciones a tus procesos de SAP.

Prueba entonces lo primero que te sugiero y que ya te habia comentado el compañero @gera_mendez es decir crear tu SN con 12 caracteres en el RTU.

Prueba eso por favor.
Saludos.

3 Me gusta

Buenos dias, Como comenta el compañero @Gera_Mendez es necesario saber de donde eres para asi poder ayudarte, ya que en varios paises el “LicTradNum” (RFC Caso México) es de 12 o 13 caracteres y tambien dandole razon al compañero, debes saber el funcionamiento minimo del SAP para poder programar en el mismo. Por lo que alcanzo a notar e una imagen que colocaste, estas haciendo un desarrollo en visual studio, si gustas puedo apoyarte para crear un desarrollo en BASIC para generacion automatica los clientes, desde un XML,CSV,TXT,WebService.

2 Me gusta

@saufondez Si lo probare, ahora tengo problemas con mi pc y ando restaurando la maquina pero en cuanto lo pruebe te aviso el resultado , muchas gracias.

@DavidSDK , Hola gracias por respondes, y soy de Venezuela, Si estoy trabajndo con Visual Studio para importar clientes mediante archivos xml. de verdad seria de gran ayuda si me ayudas con algun codigo no importa que sea en basic yo lo entiendo y puedo traducir el codigo a C# o utilizar ese mismo codigo no tengo problema. de verdad agradeceria de tu ayuda.

Te dejo un par de links con temas similares que puedes revisar y quiza te den ideas. Quizá el problema no este exactamente en el RTU de tu Socio de Negocios, quiza esta en otro lado.

h_tps://blogs.sap.com/2014/07/17/how-to-export-and-import-journal-entry-using-xml-via-di-api/
h_tps://archive.sap.com/discussions/thread/6792

Espero te sirvan.
Saludos.

1 me gusta