mercoledì 29 aprile 2015
lunedì 27 aprile 2015
Inserimento e lancio di una sessione Batch-Input
*----------------------------------------------------------------------*
* DECLARATIONS *
*----------------------------------------------------------------------*
DATA: BEGIN OF gt_in OCCURS 0,
matnr LIKE MARA-MATNR,
[...]
END OF gt_in.
DATA: gt_bdcdata LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
DATA: gv_qid LIKE APQI-QID.
*----------------------------------------------------------------------*
* LAYOUT *
*----------------------------------------------------------------------*
PARAMETERS: pa_sess(12) NO-DISPLAY.
*---------------------------------------------------------------------*
* FORM CREA_SESSIONE *
*---------------------------------------------------------------------*
FORM crea_sessione.
CLEAR: gt_bdcdata, gt_bdcdata[].
PERFORM bdc_open_group USING pa_sess.
LOOP AT gt_in.
PERFORM bdc_dynpro_field USING:
'X' 'ZMMA_MATIMB2' '0100',
' ' 'BDC_OKCODE' '=ENTR',
' ' 'L_DYN_0100-MATNR' gt_in-matnr.
[...]
PERFORM bdc_transaction USING 'ZMMA_MATIMB'.
CLEAR: gt_bdcdata, gt_bdcdata[].
ENDLOOP.
PERFORM bdc_close_group.
PERFORM bdc_start_group USING pa_sess.
ENDFORM. "crea_sessione
*----------------------------------------------------------------------*
* FORM BDC_OPEN_GROUP *
*----------------------------------------------------------------------*
FORM bdc_open_group USING p_session.
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
GROUP = p_session
KEEP = 'X'
USER = SY-UNAME
IMPORTING
QID = gv_qid.
IF SY-SUBRC <> 0.
MESSAGE E000(YA1) WITH 'ERRORE BDC_OPEN_GROUP PER '
'SESSIONE BATCH-INPUT '
p_session.
ENDIF.
ENDFORM. "bdc_open_group
*----------------------------------------------------------------------*
* FORM BDC_CLOSE_GROUP *
*----------------------------------------------------------------------*
FORM bdc_close_group.
CALL FUNCTION 'BDC_CLOSE_GROUP'
EXCEPTIONS
NOT_OPEN = 1
QUEUE_ERROR = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. "bdc_close_group
*----------------------------------------------------------------------*
* FORM BDC_DYNPRO_FIELD *
*----------------------------------------------------------------------*
FORM bdc_dynpro_field USING p_dynbegin p_fnam p_fval.
CLEAR gt_bdcdata.
IF p_dynbegin = 'X'.
gt_bdcdata-program = p_fnam.
gt_bdcdata-dynpro = p_fval.
gt_bdcdata-dynbegin = 'X'.
ELSE.
gt_bdcdata-fnam = p_fnam.
gt_bdcdata-fval = p_fval.
ENDIF.
APPEND gt_bdcdata.
ENDFORM. "bdc_dynpro_field
*----------------------------------------------------------------------*
* FORM BDC_TRANSACTION *
*----------------------------------------------------------------------*
FORM bdc_transaction USING p_tcode.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = p_tcode
TABLES
DYNPROTAB = gt_bdcdata.
ENDFORM. "bdc_transaction
*----------------------------------------------------------------------*
* FORM BDC_START_GROUP *
*----------------------------------------------------------------------*
FORM bdc_start_group USING p_session.
DATA: lv_bdc(4) VALUE 'BDC ', "Datatyp = Batch-Input
lv_amodus(1) VALUE 'E', "Visualizzare errore
lv_lmodus(1), "Registro ampliato
lv_expert(1), "Sess. esperto
lv_defsize(1), "Dim. standard dynpro
lv_errfend(1), "Interr. in caso di err. log
lv_simubatch(1). "Simulare sess. background
CALL 'BDC_START_GROUP' ID 'GROUP' FIELD p_session
ID 'QUID' FIELD gv_qid
ID 'DISPLAY' FIELD lv_amodus
ID 'LOG' FIELD lv_lmodus
ID 'EXPERT' FIELD lv_expert
ID 'DYSIZE' FIELD lv_defsize
ID 'ERRORFORCEEND' FIELD lv_errfend
ID 'SIMUBATCH' FIELD lv_simubatch.
ENDFORM. "bdc_start_group
*----------------------------------------------------------------------*
Pubblicato da
F/\B!O
alle
15:12
Commenta per primo!
Etichette: ABAP
lunedì 20 aprile 2015
Quer pasticciaccio brutto de via Merulana, Carlo Emilio Gadda
Di Carlo Emilio Gadda
Editore: Gruppo Editoriale l'Espresso
Lingua: Italiano | Numero di pagine: 256 | Isbn-13: 9788481305425 | Data di pubblicazione: 01/01/2002 | Genere: Criminalità - Narrativa & Letteratura - Mistero & Gialli
Pubblicato da
F/\B!O
alle
10:40
Commenta per primo!
Etichette: letture digitali, libri
giovedì 16 aprile 2015
La Bibbia
Editore: Ancora
Lingua: Italiano | Numero di pagine: 1768 | Isbn-13: 9788851406400 | Data di pubblicazione: 2009-xx-xx | Curatore: Bruno Maggioni - Gregorio Vivaldelli | Genere: Storia - Legge - Religione & Spiritualità
Pubblicato da
F/\B!O
alle
13:42
Commenta per primo!
Etichette: letture cartacee, libri
martedì 14 aprile 2015
Plunder n
| English | Italiano | |
| plunder [sth] vtr | (loot, steal) | saccheggiare, depredare vtr |
| The thieves plundered the jewellery shop. | ||
| I ladri hanno saccheggiato i gioielli del negozio. | ||
| plunder n | (looted items) | bottino, malloppo nm |
| The gang divided up the plunder from their latest robbery. | ||
| La gang si è divisa il bottino dell'ultima rapina. | ||
| plunder n | (act of looting) | saccheggio nm, razzia nf |
| After the plunder of the church, the doors were kept locked except during services. | ||
| Dopo il saccheggio della chiesa le porte sono state tenute chiuse, fatta eccezione per la messa. | ||
Pubblicato da
F/\B!O
alle
11:20
Commenta per primo!
Etichette: traduzioni
mercoledì 8 aprile 2015
Determinare il nome del Function Module generato
*----------------------------------------------------------------------*
* DECLARATIONS *
*----------------------------------------------------------------------*
data: gv_form TYPE NA_FNAME,
gv_function TYPE RS38L_FNAM.
*----------------------------------------------------------------------*
* FORM READ_FM *
*----------------------------------------------------------------------*
FORM read_fm USING pv_form
CHANGING pv_function.
DATA: lv_w_cx_root TYPE REF TO cx_root,
lv_cx_fp_api_repository TYPE REF TO cx_fp_api_repository,
lv_cx_fp_api_usage TYPE REF TO cx_fp_api_usage,
lv_cx_fp_api_internal TYPE REF TO cx_fp_api_internal.
TRY.
CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'
EXPORTING
I_NAME = pv_form
IMPORTING
E_FUNCNAME = pv_function.
CATCH cx_fp_api_repository INTO lv_cx_fp_api_repository.
MESSAGE lv_cx_fp_api_repository TYPE 'E'.
CATCH cx_fp_api_internal INTO lv_cx_fp_api_internal.
MESSAGE lv_cx_fp_api_internal TYPE 'E'.
CATCH cx_fp_api_usage INTO lv_cx_fp_api_usage.
MESSAGE lv_cx_fp_api_usage TYPE 'E'.
CATCH cx_root INTO gv_w_lx_root.
MESSAGE lv_w_cx_root TYPE 'E'.
ENDTRY.
ENDFORM. " read_fm
Pubblicato da
F/\B!O
alle
11:05
Commenta per primo!
Etichette: ABAP
martedì 7 aprile 2015
Esportare un semplice file di Excel
*----------------------------------------------------------------------*
* DECLARATIONS *
*----------------------------------------------------------------------*
DATA: BEGIN OF gt_out OCCURS 0,
bukrs LIKE BSEG-BUKRS,
belnr LIKE BSEG-BELNR,
gjahr LIKE BSEG-GJAHR,
[...]
END OF gt_out.
*----------------------------------------------------------------------*
* LAYOUT *
*----------------------------------------------------------------------*
PARAMETERS: pa_file TYPE STRING LOWER CASE.
*----------------------------------------------------------------------*
* FORM OUTPUT_XLS *
*----------------------------------------------------------------------*
FORM output_xls.
DATA: BEGIN OF ls_fields,
name(40),
END OF ls_fields,
lt_fields LIKE ls_fields OCCURS 0.
DEFINE append_field.
ls_fields-name = &1.
APPEND ls_fields TO lt_fields.
END-OF-DEFINITION.
append_field 'FirstField'.
[...]
append_field 'LastField'.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME = pa_file
WRITE_FIELD_SEPARATOR = 'X'
TRUNC_TRAILING_BLANKS = 'X'
TABLES
DATA_TAB = gt_out
FIELDNAMES = lt_fields
EXCEPTIONS
FILE_WRITE_ERROR = 1
NO_BATCH = 2
GUI_REFUSE_FILETRANSFER = 3
INVALID_TYPE = 4
NO_AUTHORITY = 5
UNKNOWN_ERROR = 6
HEADER_NOT_ALLOWED = 7
SEPARATOR_NOT_ALLOWED = 8
FILESIZE_NOT_ALLOWED = 9
HEADER_TOO_LONG = 10
DP_ERROR_CREATE = 11
DP_ERROR_SEND = 12
DP_ERROR_WRITE = 13
UNKNOWN_DP_ERROR = 14
ACCESS_DENIED = 15
DP_OUT_OF_MEMORY = 16
DISK_FULL = 17
DP_TIMEOUT = 18
FILE_NOT_FOUND = 19
DATAPROVIDER_EXCEPTION = 20
CONTROL_FLUSH_ERROR = 21
OTHERS = 22.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. "output_xls
Pubblicato da
F/\B!O
alle
15:50
Commenta per primo!
Etichette: ABAP
Se ti leggo amerò per sempre, Carlo Di Cicco
Di Carlo Di Cicco
Editore: Il Pozzo di Giacobbe
Lingua: Italiano | Numero di pagine: 161 | Isbn-13: 9788861245266 | Data di pubblicazione: 2014-09-xx | Genere: Saggio - Religione & Spiritualità
Pubblicato da
F/\B!O
alle
10:43
Commenta per primo!
Etichette: letture cartacee, libri
lunedì 6 aprile 2015
Variante di visualizzazione del layout ALV
*----------------------------------------------------------------------*
* LAYOUT *
*----------------------------------------------------------------------*
PARAMETERS: pa_vari TYPE SLIS_VARI.
*----------------------------------------------------------------------*
* EVENTS *
*----------------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR pa_vari.
DATA: ls_variant TYPE DISVARIANT,
lv_exit.
ls_variant-report = SY-REPID.
ls_variant-username = SY-UNAME.
ls_variant-variant = pa_vari.
CALL FUNCTION 'LVC_VARIANT_SAVE_LOAD'
EXPORTING
I_SAVE_LOAD = 'F'
I_TABNAME = '1'
IMPORTING
E_EXIT = lv_exit
CHANGING
CS_VARIANT = ls_variant
EXCEPTIONS
OTHERS = 1.
pa_vari = ls_variant-variant.
*----------------------------------------------------------------------*
* FORM OUTPUT_ALV *
*----------------------------------------------------------------------*
FORM output_alv.
TYPE-POOLS SLIS.
DATA: ls_layout TYPE SLIS_LAYOUT_ALV,
ls_fieldcat TYPE SLIS_FIELDCAT_ALV,
lt_fieldcat TYPE SLIS_T_FIELDCAT_ALV,
ls_variant TYPE DISVARIANT.
[...]
ls_variant-report = SY-REPID.
ls_variant-username = SY-UNAME.
IF NOT pa_vari IS INITIAL.
ls_variant-variant = pa_vari.
ENDIF.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-CPROG
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
I_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'
I_BACKGROUND_ID = 'ALV_BACKGROUND'
IS_LAYOUT = ls_layout
IT_FIELDCAT = lt_fieldcat
I_SAVE = 'A'
IS_VARIANT = ls_variant
TABLES
T_OUTTAB = gt_out.
ENDFORM. "output_alv
Pubblicato da
F/\B!O
alle
15:48
Commenta per primo!
Etichette: ABAP