|
#1
|
||||
|
||||
Hola,
En todo lo que he trabajado de desarrollos SAP siempre hemos tenido la premisa de NO editar directamente las tablas estándar. El camino indicado es invocar las transacciones estándar suministrandoles la información que se desea insertar o modificar. Es una medida de prudencia pues no tenemos conocimiento completo de las tablas ni de las relaciones entre esas tablas. Con esta base considero poco prudente insertar registros directamente pues es muy probable que se dañe la integridad referencial de la base de datos. Le recomendaría buscar la forma de invocar desde Java una de las transacciones estándar de edición de clientes (XD02, FD02 o VD02) y asi se evita la complejidad de actualizar una diversidad de tablas e igualmente se evita el riesgo de dañarla integridad referencial. |
#2
|
|||
|
|||
Hola!
Lo primero, gracias por tú respuesta. En cuanto a lo de editar las tablas...., he estado buscando por todos los sitios que se me ha ocurrido (de Internet y del propio SAP), la forma de conseguir hacerlo sin recurrir a las tablas. Es por ello que para casi todos los datos que necesito, he conseguido usar la función CUSTOMER_MAINTAIN_ALL. El caso es que (incomprensiblemente), hay cosas que escapan a esa función, entre ellas lo de crear esas direcciónes adicionales dependiendo de la delegación, sociedad y empresa cliente. Tras dar muchas vueltas, he podido ver que las tablas que comento arriba son las que están implicadas en la gestión de direcciones y formas de contacto. No obstante, estoy ahora en la vía de investigar los IDOCS, sobre los cuales tampoco tengo mucha información. El motivo de esta nueva vía, es por el hecho de que ahora también tengo que insertar los datos de proveedores y si el caso de los clientes era complicado, el de los proveedores parece MUCHO más complicado..., ya que en este caso no hay función parecida a la "CUSTOMER_MAINTAIN_ALL" que me pueda servir. Agradecería ayuda en cuanto al uso de IDOCS de forma síncrona desde Java, mediante JCO y la Java IDOC Class Library. MUCHAS GRACIAS!!! |
#3
|
|||
|
|||
Hola a todos....,
bueno, tras hacer un pre-intento con los IDOCS y ver que ni siquiera consigo hacer que funcionen (me dan error), finalmente he descubierto la posibilidad de grabar las acciones de una transacción mediante la SHDB. Lo mejor es que puede convertir esa grabación en una función RFC y de esta forma llamarla desde el programa JAVA!!! Una vez visto lo que hace la función, la adapté a mis necesidades, añadiendo lo que precisaba o adaptando algunos puntos de la misma. Aun así he tenido problema con los datos adicionales, para los que tuve que hacer una grabación aparte y meter los datos de dirección de forma mixta entre la función ADDR_INSERT para la dirección postal y complementado con inserciones en tablas para los números de teléfono. Pero al menos ya tenía el identificador de la dirección, creado automáticamente por SAP. Saludos. |
#4
|
|||
|
|||
No salgo de mi asombro, como puede ser que a alguien le permitan hacer semejante barbaridad? en que empresa trabajás? no tienen QA? nadie revisa lo que hacés?
Es inadmisible insertar registros en las tablas de SAP directamente!!!! si SAP lo ve te sacan el soporte sin opcion a reclamo!!! Existen idocs, call transactions, bathc inputs, bapis, etc... para hacer las cosas correctamente, si no las sabes usar preguntá o busca alguien que te explique. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|