Conectar SAP con DB SQL e insertar registros en el SQL directamente

En ABAP podemos grabar directamente en una DB externa a pedido de algún cliente, en este caso había que conectarse con una DB SQL Server, esto se realiza manteniendo una conexión con la DB y desde abap usando SQL NATIVO.

Pasos a seguir.
1- Establecer la conexión via tx DBCO

Enlace DB: es el nombre que nosotros queramos es el nombre con el cual dsp en el Código usaremos.
SGBD: Es el tipo de Server MSS (SQL Server)
Usuario y Password para acceder a la DB
Info Con.: El string de conexión con la DB.

2- Código Fuente
El SQL Nativo debemos ejecutarlo dentro de sentencias.
EXEC SQL

ENDEXEC.

“Primero nos conectamos
EXEC SQL.
CONNECT TO ‘MULTINT3R’ AS ‘R’
ENDEXEC.

EXEC SQL.
SET CONNECTION ‘R’
ENDEXEC.

“Loopeamos la tabla interna que deseamos grabar e insertamos los valores
LOOP AT IT_SQL.
EXEC SQL.
INSERT INTO ZRemito
(Remito, RemitoInterno, OT, Modelo, IMEI, ModReemp, IMEIReemp, Garantia, Precio, Moneda, NroFormularioSIC,Operador, TipoReg, codFallaAccionParte, FallaAccionParte, TextoFallaAccionParte, Cantidad, FechaHora,Usuario)
VALUES (:IT_SQL-REMITO, :IT_SQL-remito_sap, :IT_SQL-aufnr,:IT_SQL-Modelo, :IT_SQL-imei, :IT_SQL-modreemp,:IT_SQL-IMEIReemp, :IT_SQL-Garantia, :IT_SQL-Precio, :IT_SQL-Moneda, :IT_SQL-FSIC, :IT_SQL-Operador,:IT_SQL-LETRA, :IT_SQL-COD, :IT_SQL-Falla, :IT_SQL-Falla_t, :IT_SQL-Cantidad, :IT_SQL-Fecha, :IT_SQL-Usuario)
ENDEXEC.
ENDLOOP.

EXEC SQL.
SET CONNECTION DEFAULT
ENDEXEC.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: