Sunday, April 29, 2007

SO10 con PHP y SAP...


Crea textos en SAP utilizando este emulador de SO10 -;)

Tasting the mix of PHP and SAP - Volume 13

Saludos,

Blag.


Technorati tags:

Friday, April 20, 2007

Todos mis ejemplos de PHP y Ruby con SAP!


Si les interesa la integración PHP/SAP y Ruby/SAP, pueden descargar de manera gratuita, dos archivos .zip con todos los emuladores que hecho hasta el momento -:D

PHP/SAP

  • SBWP
  • SE10
  • SE11_SE16
  • SE38
  • SE49
  • SE78
  • SE93
  • SM30
  • SP01
  • ST22


Ruby/SAP

  • SE10
  • SE16
  • SE16 con WxRuby


Para acceder, ingresen a Blag's Public Box



Saludos,

Blag.

Emulando SE78 en PHP y SAP...


En mi más reciente blog en el SDN
Tasting the mix of PHP and SAP - Volume 12, demuestro como crear un pequeño emulador de SE78 con PHP y SAP.

Saludos,

Blag.

Wednesday, April 04, 2007

Celdas editables en ALV OO


En el proyecto en el que estoy actualmente, debo utilizar lo más posible ABAP Orientado a Objetos...Sobre todo en ALV...Y gracias a un requerimiento, pude hacer este pequeño programa de ejemplo.



*&-----------------------------------------------------------*
*& Report Z_DUMMY_ATG
*&-----------------------------------------------------------*

REPORT Z_DUMMY_ATG NO STANDARD PAGE HEADING.

TABLES: SPFLI.

*============================================================
* Variables
*============================================================

DATA: OK_CODE TYPE SY-UCOMM,
L_MODE TYPE RAW4,
W_TABIX TYPE SY-TABIX.

*============================================================
* Tablas internas
*============================================================
DATA: L_S_LAYO TYPE LVC_S_LAYO.

DATA: WA_EDIT TYPE LVC_T_STYL WITH HEADER LINE.
DATA: IT_EDIT TYPE LVC_T_STYL WITH HEADER LINE.

DATA: BEGIN OF G_WA_SFLIGHT.
INCLUDE STRUCTURE SPFLI.
DATA: CELL_TAB TYPE LVC_T_STYL.
DATA: END OF G_WA_SFLIGHT.

TYPES: BEGIN OF SPFLI_TAB.
INCLUDE STRUCTURE SPFLI.
TYPES: CELL_TAB TYPE LVC_T_STYL.
TYPES: END OF SPFLI_TAB.

TYPES: SPFLI_TABS TYPE STANDARD TABLE OF SPFLI_TAB.

DATA: GI_SFLIGHT TYPE SPFLI_TABS.

DATA: BEGIN OF AUX_TAB OCCURS 0,
CARRID LIKE SPFLI-CARRID,
CONNID LIKE SPFLI-CONNID,
CITYFROM LIKE SPFLI-CITYFROM,
AIRPFROM LIKE SPFLI-AIRPFROM,
CITYTO LIKE SPFLI-CITYTO,
AIRPTO LIKE SPFLI-AIRPTO,
END OF AUX_TAB.

DATA: SPFLI_TAB_WA LIKE G_WA_SFLIGHT.
FIELD-SYMBOLS: <SF> STRUCTURE G_WA_SFLIGHT
DEFAULT SPFLI_TAB_WA.

*============================================================
* Objetos
*============================================================

DATA: CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
ALV_LIST TYPE REF TO CL_GUI_ALV_GRID.

*============================================================
* Selección de Datos
*============================================================

SELECT *
FROM SPFLI
INTO CORRESPONDING FIELDS OF TABLE AUX_TAB .

LOOP AT AUX_TAB.
MOVE-CORRESPONDING AUX_TAB TO <SF>.
APPEND <SF> TO GI_SFLIGHT.
ENDLOOP.

*============================================================
* Instancimiento de Objetos
*============================================================

CREATE OBJECT CONTAINER
EXPORTING CONTAINER_NAME = 'LIST_AREA'.

CREATE OBJECT ALV_LIST
EXPORTING I_PARENT = CONTAINER.

*============================================================
* Procesamiento
*============================================================

LOOP AT GI_SFLIGHT INTO G_WA_SFLIGHT.
W_TABIX = SY-TABIX.
IF G_WA_SFLIGHT-CITYTO EQ 'SAN FRANCISCO'.
L_MODE = CL_GUI_ALV_GRID=>MC_STYLE_ENABLED.
MOVE 'CITYTO' TO WA_EDIT-FIELDNAME.
MOVE L_MODE TO WA_EDIT-STYLE.
INSERT WA_EDIT INTO IT_EDIT INDEX W_TABIX.
G_WA_SFLIGHT-CELL_TAB[] = IT_EDIT[].
ENDIF.
MODIFY GI_SFLIGHT FROM G_WA_SFLIGHT.
ENDLOOP.

MOVE 'CELL_TAB' TO L_S_LAYO-STYLEFNAME.

CALL METHOD ALV_LIST->SET_READY_FOR_INPUT
EXPORTING I_READY_FOR_INPUT = 1.

CALL METHOD ALV_LIST->SET_TABLE_FOR_FIRST_DISPLAY(
EXPORTING I_STRUCTURE_NAME = 'SPFLI'
IS_LAYOUT = L_S_LAYO
CHANGING IT_OUTTAB = GI_SFLIGHT ).

*============================================================
* Dynpro
*============================================================

CALL SCREEN 100.

*&-----------------------------------------------------------
*& Module STATUS_0100 OUTPUT
*&-----------------------------------------------------------
MODULE STATUS_0100 OUTPUT.
SET PF-STATUS '100'.
ENDMODULE.

*&-----------------------------------------------------------
*& Module USER_COMMAND_0100 INPUT
*&-----------------------------------------------------------
MODULE USER_COMMAND_0100 INPUT.
OK_CODE = SY-UCOMM.
IF OK_CODE = 'BACK'.
SET SCREEN 0.
LEAVE SCREEN.
CLEAR OK_CODE.
ENDIF.
ENDMODULE.


Saludos,

Blag.


Technorati tags:

El Arte de Programar Euphoria


Luego de un tiempo, finalmente pude publicar mi nuevo libro -:D Y esta vez le tocó el turno a Euphoria



Pueden compralo en El Arte de Programar Euphoria.

Saludos,

Blag.