giovedì 29 dicembre 2016

La svastica sul sole, Philip K. Dick

La svastica sul sole
Di Philip K. Dick
Editore: Fanucci


Lingua: Italiano | Numero di pagine: 336 | Isbn-10: 8834710878 | Data di pubblicazione: 01/01/2005 | Traduttore: Maurizio Nati | Curatore: Carlo Pagetti | Genere: Narrativa & Letteratura - Storia - Fantascienza

lunedì 26 dicembre 2016

Sour adj

/ˈsaʊə/

Traducendo Unreal Estate ho imparato questo vocabolo.

EnglishItaliano
sour adj(taste: acidic)aspro, acido agg
Jane grimaced as she tasted the sour lemon.
Jane fece una smorfia quando assaggiò il limone aspro.
sour adjfigurative (bitter, resentful)aspro, acido agg
After a number of disappointments early in her life, Ann had become sour.
Dopo una quantità di delusioni nella vita, Ann era diventata amareggiata.
sour vi(turn bad)inacidirsi, rovinarsi, guastarsi v rif
The milk soured because Ben forgot to put it back in the fridge.
Il latte inacidì perché Ben dimenticò di rimetterlo nel frigorifero.

They suffered with me for two years in a job turned sour, encouraging me to jump ship and bring this dream to life.
Hanno sofferto con me per due anni a causa di un rapporto lavorativo rovinato, incoraggiandomi ad abbandonarlo e a dare vita a questo sogno.

giovedì 15 dicembre 2016

Revival, Stephen King

Revival
Di Stephen King
Editore: Sperling & Kupfer (Pandora)


Lingua: Italiano | Numero di pagine: 480 | Isbn-13: 9788820057916 | Data di pubblicazione: 17/03/2015 | Traduttore: Giovanni Arduino | Genere: Narrativa & Letteratura - Horror - Mistero & Gialli

mercoledì 14 dicembre 2016

Selezione multipla di Unità Organizzative

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
TABLES: pa0001, sscrfields.

DATA: gv_plvar TYPE plvar.                                

*----------------------------------------------------------------------*
* LAYOUT                                                               *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS: so_orgeh FOR pa0001-orgeh.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 33(47) pb_orgmc USER-COMMAND comm01,
                  END OF LINE.
SELECTION-SCREEN END OF BLOCK b1.

*----------------------------------------------------------------------*
* EVENTS                                                               *
*----------------------------------------------------------------------*
AT SELECTION-SCREEN.
  DATA: lt_sel_hrobject TYPE TABLE OF hrobject,
        ls_sel_hrobject TYPE hrobject.
  IF gv_plvar IS INITIAL.
  CALL FUNCTION 'RH_GET_PLVAR'
    IMPORTING
      plvar = gv_plvar.
  ENDIF.
  CASE sscrfields-ucomm.
    WHEN 'COMM01'.
      CALL FUNCTION 'RH_OBJID_REQUEST'
        EXPORTING
          plvar            = gv_plvar
          otype            = 'O'
          seark_begda      = sy-datum
          seark_endda      = sy-datum
          set_mode         = 'X'
        TABLES
          sel_hrobject_tab = lt_sel_hrobject
        EXCEPTIONS
          cancelled        = 1
          wrong_condition  = 2
          nothing_found    = 3
          illegal_mode     = 4
          internal_error   = 5
          OTHERS           = 6.
      IF sy-subrc = 0.
        so_orgeh-sign = 'I'.
        so_orgeh-option = 'EQ'.
        LOOP AT lt_sel_hrobject INTO ls_sel_hrobject.
          so_orgeh-low = ls_sel_hrobject-objid.
          APPEND so_orgeh.
        ENDLOOP.
      ENDIF.
  ENDCASE.

*----------------------------------------------------------------------*
* INIT                                                                 *
*----------------------------------------------------------------------*
INITIALIZATION.
  pb_orgmc = 'Selezione multipla UO'.

*----------------------------------------------------------------------*

martedì 13 dicembre 2016

Mapping dinamico da Excel a BAPI per creazione cespiti

*----------------------------------------------------------------------*
* FORM MAPPING_AND_BAPI                                                *
*----------------------------------------------------------------------*
FORM mapping_and_bapi.

  FIELD-SYMBOLS: <lf_tabella> TYPE table,
                 <lf_riga>    TYPE any,
                 <lf_campo>   TYPE any.

  DATA: ls_anlu             TYPE anlu,
        ls_item             TYPE soi_generic_item,
        lv_tf               TYPE string,
        lv_tfx              TYPE string,
        lv_field            TYPE string,
        lv_dtype            TYPE c,
        lv_area             TYPE bf_afabe_d,
        lt_exception_list   TYPE TABLE OF rsexc,
        lt_export_parameter TYPE TABLE OF rsexp,
        lt_import_parameter TYPE TABLE OF rsimp,
        lt_tables_parameter TYPE TABLE OF rstbl,
        ls_tables_parameter TYPE rstbl.

*import
  DATA: ls_key                  TYPE bapi1022_key,
        lv_createsubnumber      TYPE xsubno,
        ls_generaldata          TYPE bapi1022_feglg001,
        ls_generaldatax         TYPE bapi1022_feglg001x,
        ls_inventory            TYPE bapi1022_feglg011,
        ls_inventoryx           TYPE bapi1022_feglg011x,
        ls_postinginformation   TYPE bapi1022_feglg002,
        ls_postinginformationx  TYPE bapi1022_feglg002x,
        ls_timedependentdata    TYPE bapi1022_feglg003,
        ls_timedependentdatax   TYPE bapi1022_feglg003x,
        ls_allocations          TYPE bapi1022_feglg004,
        ls_allocationsx         TYPE bapi1022_feglg004x,
        ls_origin               TYPE bapi1022_feglg009,
        ls_originx              TYPE bapi1022_feglg009x,
        ls_investacctassignmnt  TYPE bapi1022_feglg010,
        ls_investacctassignmntx TYPE bapi1022_feglg010x.
*export
  DATA: lv_companycode  TYPE bapi1022_1-comp_code,
        lv_asset        TYPE bapi1022_1-assetmaino,
        lv_subnumber    TYPE bapi1022_1-assetsubno,
        ls_assetcreated TYPE bapi1022_reference.
*tables
  DATA: lt_depreciationareas  TYPE TABLE OF bapi1022_dep_areas,
        ls_depreciationareas  TYPE bapi1022_dep_areas,
        lt_depreciationareasx TYPE TABLE OF bapi1022_dep_areasx,
        ls_depreciationareasx TYPE bapi1022_dep_areasx,
        lt_cumulatedvalues    TYPE TABLE OF bapi1022_cumval,
        ls_cumulatedvalues    TYPE bapi1022_cumval,
        lt_return             TYPE TABLE OF bapiret2,
        ls_return             TYPE bapiret2.

  CALL FUNCTION 'FUNCTION_IMPORT_INTERFACE'
    EXPORTING
      funcname           = 'BAPI_FIXEDASSET_OVRTAKE_CREATE'
    TABLES
      exception_list     = lt_exception_list
      export_parameter   = lt_export_parameter
      import_parameter   = lt_import_parameter
      tables_parameter   = lt_tables_parameter
    EXCEPTIONS
      error_message      = 1
      function_not_found = 2
      invalid_name       = 3
      OTHERS             = 4.
  IF sy-subrc <> 0.
* Implement suitable error handling here
  ENDIF.

  LOOP AT gt_data INTO gs_data.
    READ TABLE gt_head INTO ls_item WITH KEY row = '1'
                                             column = gs_data-column.
    READ TABLE lt_tables_parameter
          INTO ls_tables_parameter
      WITH KEY parameter = ls_item-value.
    IF sy-subrc <> 0.
*exporting
      IF ls_item-value = 'CREATESUBNUMBER'.
        lv_tf = 'LV_CREATESUBNUMBER'.
      ELSE.
        CONCATENATE 'LS_' ls_item-value INTO lv_tf.
        CONCATENATE 'LS_' ls_item-value 'X' INTO lv_tfx.
        READ TABLE gt_head INTO ls_item WITH KEY row = '2'
                                                 column = gs_data-column.
        CONCATENATE lv_tf '-' ls_item-value INTO lv_tf.
        IF ls_item-value = 'PLATE_NO'.
          CONCATENATE lv_tfx '-' 'LICENSE_PLATE_NO' INTO lv_tfx.
        ELSEIF ls_item-value = 'ORIG_ACQ_YR'.
          CONCATENATE lv_tfx '-' 'ORIG_ACQ_YEAR' INTO lv_tfx.
        ELSE.
          CONCATENATE lv_tfx '-' ls_item-value INTO lv_tfx.
        ENDIF.
      ENDIF.
      IF lv_tf = 'LS_ORIGIN-ORIG_ACQ_YR'.
        IF gs_data-value IS NOT INITIAL.
          ls_origin-orig_acq_yr = gs_data-value+6(4).
        ENDIF.
      ELSEIF lv_tf = 'LS_ORIGIN-PURCH_NEW'.
        IF gs_data-value = 'X'.
          CLEAR ls_origin-purch_new.
        ELSE.
          ls_origin-purch_new = 'X'.
        ENDIF.
      ELSE.
        ASSIGN (lv_tf) TO <lf_campo>.
        IF <lf_campo> IS ASSIGNED.
          DESCRIBE FIELD <lf_campo> TYPE lv_dtype.
          CASE lv_dtype.
            WHEN 'D'.
              CONCATENATE gs_data-value+6(4)
                          gs_data-value+3(2)
                          gs_data-value+0(2)
                     INTO <lf_campo>.
            WHEN 'P'.
              TRANSLATE gs_data-value USING ',.'.
              <lf_campo> = gs_data-value.
            WHEN OTHERS.
              <lf_campo> = gs_data-value.
          ENDCASE.
          UNASSIGN <lf_campo>.
        ENDIF.
      ENDIF.
      ASSIGN (lv_tfx) TO <lf_campo>.
      IF <lf_campo> IS ASSIGNED.
        <lf_campo> = 'X'.
        UNASSIGN <lf_campo>.
      ENDIF.
    ELSE.
*tables
      CONCATENATE 'LT_' ls_item-value INTO lv_tf.
      CONCATENATE 'LT_' ls_item-value 'X' INTO lv_tfx.
      ASSIGN (lv_tf) TO <lf_tabella>.
      READ TABLE gt_head INTO ls_item WITH KEY row = '2'
                                               column = gs_data-column.
      lv_area = ls_item-value(2).
      SHIFT ls_item-value BY 3 PLACES.
      lv_field = 'AREA'.
      READ TABLE <lf_tabella> ASSIGNING <lf_riga>
        WITH KEY (lv_field) = lv_area.
      IF sy-subrc <> 0.
        APPEND INITIAL LINE TO <lf_tabella> ASSIGNING <lf_riga>.
        ASSIGN COMPONENT lv_field OF STRUCTURE <lf_riga> TO <lf_campo>.
        IF <lf_campo> IS ASSIGNED.
          <lf_campo> = lv_area.
          UNASSIGN <lf_campo>.
        ENDIF.
        lv_field = 'FISC_YEAR'.
        ASSIGN COMPONENT lv_field OF STRUCTURE <lf_riga> TO <lf_campo>.
        IF <lf_campo> IS ASSIGNED.
          <lf_campo> = pa_fiscy.
          UNASSIGN <lf_campo>.
        ENDIF.
        lv_field = 'ACQ_VALUE'.
        ASSIGN COMPONENT lv_field OF STRUCTURE <lf_riga> TO <lf_campo>.
        IF <lf_campo> IS ASSIGNED.
          TRANSLATE gs_data-value USING ',.'.
          <lf_campo> = gs_data-value.
          UNASSIGN <lf_campo>.
        ENDIF.
        UNASSIGN: <lf_tabella>, <lf_riga>, <lf_campo>.
        ASSIGN (lv_tfx) TO <lf_tabella>.
        IF <lf_tabella> IS ASSIGNED.
          APPEND INITIAL LINE TO <lf_tabella> ASSIGNING <lf_riga>.
          ASSIGN COMPONENT ls_item-value OF STRUCTURE <lf_riga> TO <lf_campo>.
          <lf_campo> = lv_area.
          UNASSIGN: <lf_tabella>, <lf_riga>, <lf_campo>.
        ENDIF.
      ELSE.
        ASSIGN COMPONENT ls_item-value OF STRUCTURE <lf_riga> TO <lf_campo>.
        IF <lf_campo> IS ASSIGNED.
          DESCRIBE FIELD <lf_campo> TYPE lv_dtype.
          CASE lv_dtype.
            WHEN 'D'.
              CONCATENATE gs_data-value+6(4)
                          gs_data-value+3(2)
                          gs_data-value+0(2)
                     INTO <lf_campo>.
            WHEN 'P'.
              TRANSLATE gs_data-value USING ',.'.
              <lf_campo> = gs_data-value.
            WHEN OTHERS.
              <lf_campo> = gs_data-value.
          ENDCASE.
          UNASSIGN: <lf_tabella>, <lf_riga>, <lf_campo>.
        ENDIF.
        ASSIGN (lv_tfx) TO <lf_tabella>.
        IF <lf_tabella> IS ASSIGNED.
          lv_field = 'AREA'.
          READ TABLE <lf_tabella> ASSIGNING <lf_riga>
            WITH KEY (lv_field) = lv_area.
          ASSIGN COMPONENT ls_item-value OF STRUCTURE <lf_riga> TO <lf_campo>.
          IF <lf_campo> IS ASSIGNED.
            <lf_campo> = 'X'.
            UNASSIGN: <lf_tabella>, <lf_riga>, <lf_campo>.
          ENDIF.
        ENDIF.
      ENDIF.
    ENDIF.
    AT END OF row.
      LOOP AT lt_depreciationareas
         INTO ls_depreciationareas WHERE deactivate = 'X'.
        DELETE lt_cumulatedvalues WHERE area = ls_depreciationareas-area.
      ENDLOOP.
*elimino se presenti le area da copiare
      LOOP AT so_aree.
        READ TABLE lt_depreciationareas
              INTO ls_depreciationareas
          WITH KEY area = so_aree-high.
        IF sy-subrc = 0.
          DELETE TABLE lt_depreciationareas FROM ls_depreciationareas.
          READ TABLE lt_depreciationareasx
                INTO ls_depreciationareasx
            WITH KEY area = so_aree-high.
          DELETE TABLE lt_depreciationareasx FROM ls_depreciationareasx.
        ENDIF.
        READ TABLE lt_cumulatedvalues
              INTO ls_cumulatedvalues
          WITH KEY area = so_aree-high.
        IF sy-subrc = 0.
          DELETE TABLE lt_cumulatedvalues FROM ls_cumulatedvalues.
        ENDIF.
      ENDLOOP.
*copio le aree
      LOOP AT so_aree.
        READ TABLE lt_depreciationareas
              INTO ls_depreciationareas
          WITH KEY area = so_aree-low.
        IF sy-subrc = 0.
          ls_depreciationareas-area = so_aree-high.
          APPEND ls_depreciationareas TO lt_depreciationareas.
          READ TABLE lt_depreciationareasx
                INTO ls_depreciationareasx
            WITH KEY area = so_aree-low.
          ls_depreciationareasx-area = so_aree-high.
          APPEND ls_depreciationareasx TO lt_depreciationareasx.
        ENDIF.
        READ TABLE lt_cumulatedvalues
              INTO ls_cumulatedvalues
          WITH KEY area = so_aree-low.
        IF sy-subrc = 0.
          ls_cumulatedvalues-area = so_aree-high.
          APPEND ls_cumulatedvalues TO lt_cumulatedvalues.
        ENDIF.
      ENDLOOP.
      DO.
        SORT: lt_depreciationareas,
              lt_depreciationareasx,
              lt_cumulatedvalues.
        CALL FUNCTION 'BAPI_FIXEDASSET_OVRTAKE_CREATE'
          EXPORTING
            key                  = ls_key
            createsubnumber      = lv_createsubnumber
            testrun              = cb_test
            generaldata          = ls_generaldata
            generaldatax         = ls_generaldatax
            inventory            = ls_inventory
            inventoryx           = ls_inventoryx
            postinginformation   = ls_postinginformation
            postinginformationx  = ls_postinginformationx
            timedependentdata    = ls_timedependentdata
            timedependentdatax   = ls_timedependentdatax
            allocations          = ls_allocations
            allocationsx         = ls_allocationsx
            origin               = ls_origin
            originx              = ls_originx
            investacctassignmnt  = ls_investacctassignmnt
            investacctassignmntx = ls_investacctassignmntx
          IMPORTING
            companycode          = lv_companycode
            asset                = lv_asset
            subnumber            = lv_subnumber
            assetcreated         = ls_assetcreated
          TABLES
            depreciationareas    = lt_depreciationareas
            depreciationareasx   = lt_depreciationareasx
            cumulatedvalues      = lt_cumulatedvalues
            return               = lt_return.
        READ TABLE lt_return
              INTO ls_return
          WITH KEY type = 'E'
                   id = 'AY'
                   number = '221'.
        IF sy-subrc = 0.
          DELETE lt_depreciationareas WHERE deactivate = 'X'.
          DELETE lt_depreciationareasx WHERE deactivate = 'X'.
          CLEAR lt_return[].
        ELSE.
          COMMIT WORK AND WAIT.
          EXIT.
        ENDIF.
      ENDDO.
      IF lv_asset IS NOT INITIAL AND cb_test IS INITIAL.
        ls_anlu-bukrs = lv_companycode.
        ls_anlu-anln1 = lv_asset.
        ls_anlu-anln2 = lv_subnumber.
        MODIFY anlu FROM ls_anlu.
        LOOP AT lt_depreciationareas INTO ls_depreciationareas
                                     WHERE deactivate <> 'X'.
          UPDATE anlb
             SET afabg = ls_depreciationareas-odep_start_date
           WHERE bukrs = lv_companycode
             AND anln1 = lv_asset
             AND anln2 = lv_subnumber
             AND afabe = ls_depreciationareas-area
             AND bdatu = '99991231'.
        ENDLOOP.
      ENDIF.
      LOOP AT lt_return INTO ls_return.
        ls_return-row = gs_data-row.
        APPEND ls_return TO gt_return.
      ENDLOOP.
      CLEAR: ls_anlu,
             ls_key,
             lv_createsubnumber,
             ls_generaldata,
             ls_generaldatax,
             ls_inventory,
             ls_inventoryx,
             ls_postinginformation,
             ls_postinginformationx,
             ls_timedependentdata,
             ls_timedependentdatax,
             ls_allocations,
             ls_allocationsx,
             ls_origin,
             ls_originx,
             ls_investacctassignmnt,
             ls_investacctassignmntx,
             lv_companycode,
             lv_asset,
             lv_subnumber,
             ls_assetcreated,
             lt_depreciationareas[],
             ls_depreciationareas,
             lt_depreciationareasx[],
             ls_depreciationareasx,
             lt_cumulatedvalues[],
             ls_cumulatedvalues,
             lt_return[],
             ls_return.
    ENDAT.
  ENDLOOP.

ENDFORM.

*----------------------------------------------------------------------*

lunedì 12 dicembre 2016

Creare un semplice cruscotto

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
TABLES: sscrfields.

*----------------------------------------------------------------------*
* LAYOUT                                                               *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 1(4) pb_uvet USER-COMMAND comm01,
                  COMMENT 6(79) TEXT-d11,
                  END OF LINE.
SELECTION-SCREEN END OF BLOCK b1.

SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE TEXT-002.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 1(4) pb_del USER-COMMAND comm02,
                  COMMENT 6(79) TEXT-d21,
                  END OF LINE.
SELECTION-SCREEN: BEGIN OF LINE,
                  COMMENT 6(79) TEXT-d22 MODIF ID id1,
                  END OF LINE.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 1(4) pb_del2 USER-COMMAND comm10,
                  COMMENT 6(79) TEXT-d23,
                  END OF LINE.
SELECTION-SCREEN: BEGIN OF LINE,
                  COMMENT 6(79) TEXT-d22 MODIF ID id1,
                  END OF LINE.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 1(4) pb_zint USER-COMMAND comm03,
                  COMMENT 6(79) TEXT-d31,
                  END OF LINE.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 6(4) pb_check USER-COMMAND comm04,
                  COMMENT 11(79) TEXT-d41,
                  END OF LINE.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 6(4) pb_appr USER-COMMAND comm05,
                  COMMENT 11(79) TEXT-d51,
                  END OF LINE.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 1(4) pb_exc USER-COMMAND comm06,
                  COMMENT 6(79) TEXT-d61,
                  END OF LINE.
SELECTION-SCREEN END OF BLOCK b2.

SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE TEXT-003.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 1(4) pb_inter USER-COMMAND comm07,
                  COMMENT 6(79) TEXT-d71,
                  END OF LINE.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 1(4) pb_forn USER-COMMAND comm08,
                  COMMENT 6(79) TEXT-d81,
                  END OF LINE.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 1(4) pb_cdc USER-COMMAND comm09,
                  COMMENT 6(79) TEXT-d91,
                  END OF LINE.
SELECTION-SCREEN END OF BLOCK b3.

SELECTION-SCREEN BEGIN OF BLOCK b4 WITH FRAME TITLE TEXT-004.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 1(4) pb_descr USER-COMMAND comm11,
                  COMMENT 6(79) TEXT-d92,
                  END OF LINE.
SELECTION-SCREEN END OF BLOCK b4.

*----------------------------------------------------------------------*
* EVENTS                                                               *
*----------------------------------------------------------------------*
AT SELECTION-SCREEN.
  CASE sscrfields-ucomm.
    WHEN 'COMM01'.
      CALL TRANSACTION 'ZHCM_ANAGR_UVET'.                
    WHEN 'COMM02'.
      CALL TRANSACTION 'ZHCM_ZT_ZINTORD_DEL'.            
    WHEN 'COMM10'.
      CALL TRANSACTION 'ZHCM_ZT_APPR_DEL'.               
    WHEN 'COMM03'.
      CALL TRANSACTION 'ZHCM_ZT_ZINTORD'.                
    WHEN 'COMM04'.
      CALL TRANSACTION 'ZHCM_IF_CHECK_OUT'.              
    WHEN 'COMM05'.
      CALL TRANSACTION 'ZHCM_APPR_IF_OUT'.               
    WHEN 'COMM06'.
      CALL TRANSACTION 'ZHCM_ZT_INTORD_E'.               
    WHEN 'COMM07'.
      CALL TRANSACTION 'ZHCM_INTERFACE_OUT'.             
    WHEN 'COMM08'.
      CALL TRANSACTION 'ZFBC_ESTR_FORN'.                 
    WHEN 'COMM09'.
      CALL TRANSACTION 'ZFBC_ESTR_CDC'.                  
    WHEN 'COMM11'.
      CALL TRANSACTION 'ZHCM_ZT_CHECK'.                  
  ENDCASE.

AT SELECTION-SCREEN OUTPUT.
  LOOP AT SCREEN.
    IF screen-group1 = 'ID1'.
      screen-intensified = 1.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.

*----------------------------------------------------------------------*
* INIT                                                                 *
*----------------------------------------------------------------------*
INITIALIZATION.
  pb_uvet =
  pb_del =
  pb_del2 =
  pb_zint =
  pb_check =
  pb_appr =
  pb_exc =
  pb_inter =
  pb_forn  =
  pb_cdc =
  pb_descr = '@15@'.

*----------------------------------------------------------------------*
* PROGRAM BODY                                                         *
*----------------------------------------------------------------------*
START-OF-SELECTION.

END-OF-SELECTION.
  RETURN.

*----------------------------------------------------------------------*

domenica 4 dicembre 2016

Portcullis n

/pɔːtˈkʌlɪs/

Traducendo Perdition's Mouth: Abyssal Rift ho imparato questo vocabolo.

EnglishItaliano
portcullis n(castle gate that is raised and lowered)saracinesca nf

Closed portcullises do not block Area Effect attacks, but can be hit and destroyed by one.
Le saracinesche chiuse non bloccano gli attacchi a Effetto d’Area, ma possono essere colpite e distrutte da uno di essi.

mercoledì 30 novembre 2016

Eligible for [sth] adj + prep

/ˈɛlɪdʒəbəl/

Traducendo Dwar7s Fall ho imparato questo vocabolo.

EnglishItaliano
eligible adj(entitled)idoneo, qualificato agg
The foreigner's application for state benefits was rejected, as he wasn't eligible.
La richiesta di benefici del cittadino straniero è stata respinta perché non era idoneo.
eligible for [sth] adj + prep(entitled to claim)avere diritto a [qlcs], avere i requisiti per [qlcs] vtr
We are eligible for a tax credit because of the energy-efficient furnace we installed.
Abbiamo diritto a una detrazione fiscale grazie alla caldaia ad alta efficienza che abbiamo installato.

Kingdom: To be eligible for these points, you need to have your castle tile in play and not blocked by a frost giant.
Regno: Per aver diritto a questi punti, dovete avere la vostra tessera castello in gioco e non bloccata da un gigante del gelo.

martedì 29 novembre 2016

Scrittura dei documenti di modifica per KNA1 e KNVV

*----------------------------------------------------------------------*
* FORM DOCUM_MODIF_DEBI                                                *
*----------------------------------------------------------------------*
FORM docum_modif_debi.

  DATA: lv_objectid    LIKE CDHDR-OBJECTID,
        ls_n_kna1      LIKE KNA1,
        ls_o_kna1      LIKE KNA1,
        dummy_knb1     LIKE KNB1,
*        ls_n_knvv      LIKE knvv,
*        ls_o_knvv      LIKE knvv,
        lt_dummy_knas  TYPE FKNAS  OCCURS 0,
        lt_dummy_knat  TYPE FKNAT  OCCURS 0,
        lt_dummy_knb5  TYPE FKNB5  OCCURS 0,
        lt_dummy_knbk  TYPE FKNBK  OCCURS 0,
        lt_dummy_knbw  TYPE FKNBW  OCCURS 0,
        lt_dummy_knex  TYPE FKNEX  OCCURS 0,
        lt_dummy_knva  TYPE FKNVA  OCCURS 0,
        lt_dummy_knvd  TYPE FKNVD  OCCURS 0,
        lt_dummy_knvi  TYPE FKNVI  OCCURS 0,
        lt_dummy_knvk  TYPE FKNVK  OCCURS 0,
        lt_dummy_knvl  TYPE FKNVL  OCCURS 0,
        lt_dummy_knvp  TYPE FKNVP  OCCURS 0,
        lt_dummy_knvs  TYPE FKNVS  OCCURS 0,
        lt_dummy_knza  TYPE FKNZA  OCCURS 0,
        lt_dummy_lfas  TYPE FLFAS  OCCURS 0,
        lt_dummy_lfat  TYPE FLFAT  OCCURS 0,
        lt_dummy_lfb5  TYPE FLFB5  OCCURS 0,
        lt_dummy_lfbk  TYPE FLFBK  OCCURS 0,
        lt_dummy_lfbw  TYPE FLFBW  OCCURS 0,
        lt_dummy_lfei  TYPE FLFEI  OCCURS 0,
        lt_dummy_lflr  TYPE FLFLR  OCCURS 0,
        lt_dummy_lfm2  TYPE FLFM2  OCCURS 0,
        lt_dummy_lfza  TYPE FLFZA  OCCURS 0,
        lt_dummy_wyt1  TYPE FWYT1  OCCURS 0,
        lt_dummy_wyt1t TYPE FWYT1T OCCURS 0,
        lt_dummy_wyt3  TYPE FWYT3  OCCURS 0.

  DATA: t_cp_data LIKE BDI_CHPTR OCCURS 0 WITH HEADER LINE.

  DATA: BEGIN OF t_tbd62 OCCURS 10.
          INCLUDE STRUCTURE TBD62.
  DATA: END OF t_tbd62.

  IF ls_o_kna1 = ls_n_kna1 AND
     gs_o_knvv = gs_n_knvv.
*Modifica fittizia per forzare la creazione del change document
    gs_o_knvv-vsort = '*'.
  ENDIF.

  lv_objectid = gt_out-kunnr.

  CALL FUNCTION 'DEBI_WRITE_DOCUMENT'
    EXPORTING
      OBJECTID                = lv_objectid
      TCODE                   = SY-TCODE
      UTIME                   = SY-UZEIT
      UDATE                   = SY-DATLO
      USERNAME                = SY-UNAME
      OBJECT_CHANGE_INDICATOR = 'U'
      N_KNA1                  = ls_n_kna1
      O_YKNA1                 = ls_o_kna1
      UPD_KNA1                = ''
      N_KNB1                  = dummy_knb1
      O_YKNB1                 = dummy_knb1
      N_KNVV                  = gs_n_knvv
      O_YKNVV                 = gs_o_knvv
      UPD_KNVV                = 'U'
    TABLES
      XKNAS                   = lt_dummy_knas
      YKNAS                   = lt_dummy_knas
      XKNAT                   = lt_dummy_knat
      YKNAT                   = lt_dummy_knat
      XKNB5                   = lt_dummy_knb5
      YKNB5                   = lt_dummy_knb5
      XKNBK                   = lt_dummy_knbk
      YKNBK                   = lt_dummy_knbk
      XKNBW                   = lt_dummy_knbw
      YKNBW                   = lt_dummy_knbw
      XKNEX                   = lt_dummy_knex
      YKNEX                   = lt_dummy_knex
      XKNVA                   = lt_dummy_knva
      YKNVA                   = lt_dummy_knva
      XKNVD                   = lt_dummy_knvd
      YKNVD                   = lt_dummy_knvd
      XKNVI                   = lt_dummy_knvi
      YKNVI                   = lt_dummy_knvi
      XKNVK                   = lt_dummy_knvk
      YKNVK                   = lt_dummy_knvk
      XKNVL                   = lt_dummy_knvl
      YKNVL                   = lt_dummy_knvl
      XKNVP                   = lt_dummy_knvp
      YKNVP                   = lt_dummy_knvp
      XKNVS                   = lt_dummy_knvs
      YKNVS                   = lt_dummy_knvs
      XKNZA                   = lt_dummy_knza
      YKNZA                   = lt_dummy_knza.

* scrittura indicatori di modifica
* Ricerca modifiche campo campo

*  IF gs_pai-kna1 NE gs_pbo-kna1.
*    CONCATENATE sy-mandt gs_pai-key-kunnr INTO t_cp_data-tabkey.
*    PERFORM t_cp_data_fill TABLES t_cp_data
*                           USING 'KNA1' gs_pbo-kna1 gs_pai-kna1
*                                 'DEBI'.
*  ENDIF.
*
*  IF gs_pai-knvv NE gs_pbo-knvv.
*    CONCATENATE sy-mandt gs_pai-key-kunnr gs_pai-key-vkorg
*                gs_pai-key-vtweg gs_pai-key-spart
*                INTO t_cp_data-tabkey.
*    PERFORM t_cp_data_fill TABLES t_cp_data
*                           USING 'KNVV' gs_pbo-knvv gs_pai-knvv
*                                 'DEBI'.
*  ENDIF.
*
*  IF gs_pai-blc_st NE gs_pbo-blc_st.
*    CONCATENATE sy-mandt gs_pai-key-kunnr gs_pai-key-j_3asean
*                INTO t_cp_data-tabkey.
*    PERFORM t_cp_data_fill TABLES t_cp_data
*                        USING 'ZSBP_BLC_ST' gs_pbo-blc_st gs_pai-blc_st
*                               'Z_SBPBLCCL'.
*  ENDIF.
*
*  IF gs_pai-chs_st NE gs_pbo-chs_st.
*    CONCATENATE sy-mandt gs_pai-key-kunnr gs_pai-key-j_3asean
*                   INTO t_cp_data-tabkey.
*    PERFORM t_cp_data_fill TABLES t_cp_data
*                       USING 'ZSBP_BLC_ST' gs_pbo-chs_st gs_pai-chs_st
*                             'Z_SBPBLCCL'.
*  ENDIF.
*
*  IF gs_pai-blc_av_st NE gs_pbo-blc_av_st.
*    CONCATENATE sy-mandt gs_pai-key-kunnr gs_pai-key-vkorg
*                gs_pai-key-vtweg gs_pai-key-spart gs_pai-key-j_3asean
*              INTO t_cp_data-tabkey.
*    PERFORM t_cp_data_fill TABLES t_cp_data
*               USING 'ZSBP_BLC_AV_ST' gs_pbo-blc_av_st gs_pai-blc_av_st
*                     'Z_SBPBLCCL'.
*  ENDIF.
*
*  SELECT * FROM tbd62 APPENDING TABLE t_tbd62
*           WHERE mestyp = 'DEBMAS'.
*
*  SORT t_tbd62 BY cdobjcl tabname fldname.
*
*  LOOP AT t_cp_data.
*    READ TABLE t_tbd62 WITH KEY cdobjcl = t_cp_data-cdobjcl
*                                tabname = t_cp_data-tabname
*                                fldname = t_cp_data-fldname
*                    BINARY SEARCH.
*    IF sy-subrc NE 0.
*      DELETE t_cp_data.
*    ENDIF.
*  ENDLOOP.
*
**<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
*
*  IF NOT t_cp_data[] IS INITIAL.
*
** scrive indicatore di modifica di tipo listing
** (facilità di gestione per gli indicatori di modifica)
*
*    REFRESH t_cp_data.
*
*    t_cp_data-tabname  = 'KNA1'.
*    CONCATENATE sy-mandt lv_objectid INTO t_cp_data-tabkey.
*    t_cp_data-fldname  = 'NAME1'.
*    t_cp_data-cdobjcl  = 'DEBITOR'.
*    t_cp_data-cdobjid  = 'P'.
*    t_cp_data-cdchgid  = 'U'.
*    APPEND t_cp_data.
*
*    CALL FUNCTION 'CHANGE_POINTERS_CREATE_DIRECT'
*      EXPORTING
*        message_type = 'DEBMAS'
*      TABLES
*        t_cp_data    = t_cp_data.
*  ENDIF.

ENDFORM.                    " docum_modif_debi

*----------------------------------------------------------------------*
* FORM T_CP_DATA_FILL                                                  *
*----------------------------------------------------------------------*
FORM t_cp_data_fill TABLES t_cp_data STRUCTURE BDI_CHPTR
                    USING  VALUE(tabname)
                           gs_pbo_tab
                           gs_pai_tab
                           VALUE(cdobjcl).

  DATA: ls_ref TYPE REF TO CL_ABAP_STRUCTDESCR.

  FIELD-SYMBOLS: <old>, <new>,
                 <comp> TYPE ABAP_COMPDESCR.

  ls_ref ?= CL_ABAP_TYPEDESCR=>DESCRIBE_BY_DATA( gs_pbo_tab ).

  DO.
    ASSIGN COMPONENT SY-INDEX OF STRUCTURE gs_pai_tab TO <new>.
    IF SY-SUBRC NE 0. EXIT. ENDIF.
    ASSIGN COMPONENT SY-INDEX OF STRUCTURE gs_pbo_tab TO <old>.
    IF <new> <> <old>.
      LOOP AT ls_ref->components ASSIGNING <comp>
          FROM SY-INDEX TO SY-INDEX.
        t_cp_data-tabname  = tabname.
        t_cp_data-fldname  = <comp>-name.
        t_cp_data-cdobjcl  = cdobjcl.
        t_cp_data-cdobjid  = <new>.
        t_cp_data-cdchgid  = 'U'.
        APPEND t_cp_data.
      ENDLOOP.
    ENDIF.
  ENDDO.

ENDFORM.                    " t_cp_data_fill

*----------------------------------------------------------------------*

lunedì 28 novembre 2016

Weft n

/wɛft/

Traducendo Agamemnon ho imparato questo vocabolo.

EnglishItaliano
weft n(threads in weaving)trama nf
The weaver draws the weft through the warp to create the cloth.
Il tessitore intreccia la trama attraverso l'ordito per creare la stoffa.

When a player plays a Weft Tile on a space, it splits all connected Strings at that point.
Quando un giocatore gioca un Gettone Trama su uno spazio, taglia in quel punto tutti i Fili collegati.

sabato 26 novembre 2016

Lure vtr

/lʊə/

Traducendo Forged in Steel ho imparato questo vocabolo.

EnglishItaliano
lure [sb] vtrfigurative (a person)indurre, attirare qlcn con le lusinghe, attirare qlcn con l'inganno, adescare vtr
The policeman lured the criminal into a trap.
Il poliziotto ha attirato il criminale nella trappola con l'inganno.
lure n(fishing)esca nf
The siren's song acts as a lure to passing sailors.
Il canto delle sirene faceva da esca per i marinai di passaggio.

In Figure 11, the top row represents the number of jobs available, luring new immigrants to Pueblo, CO.
Nella Figura 11, la riga superiore presenta il numero di posti di lavoro disponibili, che attirano nuovi immigrati a Pueblo, CO.

mercoledì 23 novembre 2016

Cambiare i permessi di un file sull'Application Server

SM69

*----------------------------------------------------------------------*
* LAYOUT                                                               *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.
PARAMETERS pa_file TYPE string.
SELECTION-SCREEN END OF BLOCK b1.

*----------------------------------------------------------------------*
* FORM OUTPUT                                                          *
*----------------------------------------------------------------------*
FORM output.

  DATA: lt_exec_protocol TYPE TABLE OF btcxpm,
        lv_file          TYPE btcxpgpar.

  lv_file = pa_file.
  CALL FUNCTION 'SXPG_CALL_SYSTEM'
    EXPORTING
      commandname           = 'ZCHMOD777'
      additional_parameters = lv_file
    TABLES
      exec_protocol         = lt_exec_protocol.

ENDFORM.

*----------------------------------------------------------------------*

giovedì 17 novembre 2016

Se questo è un uomo, Primo Levi

Se questo è un uomo
Di Primo Levi
Editore: Einaudi (Super ET)


Lingua: Italiano | Numero di pagine: 219 | Isbn-13: 9788806219352 | Data di pubblicazione: 2014-xx-xx | Postfazione: Cesare Segre | Genere: Biografia - Narrativa & Letteratura - Storia

martedì 15 novembre 2016

Corsair, Clive Cussler e Jack du Brul

Corsair
Di Clive Cussler, Jack du Brul
Editore: Longanesi (La Gaja scienza)


Lingua: Italiano | Numero di pagine: 478 | Formato: Copertina rigida | Isbn-13: 9788830432468 | Data di pubblicazione: 01/09/2011 | Genere: Narrativa & Letteratura

venerdì 11 novembre 2016

Lettura via RFC di una tabella tramite FM standard

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
TABLES: bkpf.

TYPES: BEGIN OF ty_bkpf,
         bukrs TYPE bukrs,
         belnr TYPE belnr_d,
         gjahr TYPE gjahr,
         blart TYPE blart,
         bldat TYPE bldat,
         budat TYPE budat,
         bktxt TYPE bktxt,
       END OF ty_bkpf.

DATA BEGIN OF gt_zvim OCCURS 0.
INCLUDE STRUCTURE zvim_wf_det_blkv.
DATA END OF gt_zvim.

DATA: gt_bkpf TYPE STANDARD TABLE OF ty_bkpf,
      gs_bkpf LIKE LINE OF gt_bkpf,
      gt_options TYPE TABLE OF rfc_db_opt,
      gt_fields TYPE TABLE OF rfc_db_fld,
      gt_data TYPE TABLE OF tab512,
      gs_options TYPE rfc_db_opt,
      gs_fields TYPE rfc_db_fld,
      gs_data TYPE tab512.

FIELD-SYMBOLS <gf_field> TYPE any.

*----------------------------------------------------------------------*
* LAYOUT                                                               *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS: so_bukrs FOR bkpf-bukrs,
                so_belnr FOR bkpf-belnr,
                so_blart FOR bkpf-blart,
                so_bldat FOR bkpf-bldat,
                so_budat FOR bkpf-budat.
SELECTION-SCREEN END OF BLOCK b1.

*----------------------------------------------------------------------*
* PROGRAM BODY                                                         *
*----------------------------------------------------------------------*
START-OF-SELECTION.

  SELECT bukrs belnr gjahr blart bldat budat bktxt
    FROM bkpf
    INTO CORRESPONDING FIELDS OF TABLE gt_bkpf
   WHERE bukrs IN so_bukrs
     AND belnr IN so_belnr
     AND blart IN so_blart
     AND bldat IN so_bldat
     AND budat IN so_budat.

  LOOP AT gt_bkpf INTO gs_bkpf.

    CLEAR gt_options[].
    CONCATENATE 'BUKRS = ''' gs_bkpf-bukrs '''' INTO gs_options-text.
    APPEND gs_options TO gt_options.
    CONCATENATE 'AND BELNR = ''' gs_bkpf-bktxt(10) '''' INTO gs_options-text.
    APPEND gs_options TO gt_options.
    CONCATENATE 'AND GJAHR = ''' gs_bkpf-gjahr '''' INTO gs_options-text.
    APPEND gs_options TO gt_options.
    CALL FUNCTION 'RFC_READ_TABLE'
      DESTINATION 'FIP400'
      EXPORTING
        query_table          = 'ZVIM_WF_DET_BLKV'
      TABLES
        options              = gt_options
        fields               = gt_fields
        data                 = gt_data
      EXCEPTIONS
        table_not_available  = 1
        table_without_data   = 2
        option_not_valid     = 3
        field_not_valid      = 4
        not_authorized       = 5
        data_buffer_exceeded = 6
        OTHERS               = 7.
    IF sy-subrc <> 0.
*      Implement suitable error handling here
    ENDIF.
    LOOP AT gt_data INTO gs_data.
      LOOP AT gt_fields INTO gs_fields.
        IF gs_fields-fieldname = 'BELNR'.
          gt_zvim-belnr = gs_bkpf-belnr.
        ELSE.
          ASSIGN COMPONENT gs_fields-fieldname OF STRUCTURE gt_zvim TO <gf_field>.
          <gf_field> = gs_data+gs_fields-offset(gs_fields-length).
        ENDIF.
      ENDLOOP.
      APPEND gt_zvim.
    ENDLOOP.
    INSERT zvim_wf_det_blkv FROM TABLE gt_zvim.
    CLEAR: gt_data[], gt_zvim[].
 
  ENDLOOP.

END-OF-SELECTION.
  EXIT.

*----------------------------------------------------------------------*

Dwar7s Fall

giovedì 10 novembre 2016

Leggere un file CSV sull'Application Server

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
TABLES: p9058.

*Strutture
DATA: BEGIN OF gs_dati,
        pernr LIKE p9058-pernr,
        subty LIKE p9058-subty,
        endda LIKE p9058-endda,
        begda LIKE p9058-begda,
        preas LIKE p9058-preas,
        importo(20),
        waers LIKE p9058-waers,
        trfar LIKE p9058-trfar,
        trfgb LIKE p9058-trfgb,
        trfgr LIKE p9058-trfgr,
        trfst LIKE p9058-trfst,
      END OF gs_dati.

*Tabelle
DATA: BEGIN OF gt_bin OCCURS 0,
        dati TYPE string,
      END OF gt_bin.
DATA gt_split TYPE TABLE OF string WITH HEADER LINE.
DATA gt_dati LIKE STANDARD TABLE OF gs_dati WITH HEADER LINE.

*Variabili
DATA gv_type.

*Field-symbols
FIELD-SYMBOLS <gf_campo> TYPE ANY.

*----------------------------------------------------------------------*
* LAYOUT                                                               *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS: p_fsrv TYPE string LOWER CASE.
SELECTION-SCREEN END OF BLOCK b1.

*----------------------------------------------------------------------*
* PROGRAM BODY                                                         *
*----------------------------------------------------------------------*
START-OF-SELECTION.

  OPEN DATASET p_fsrv FOR INPUT IN TEXT MODE ENCODING DEFAULT.
  IF sy-subrc IS INITIAL.
    DO.
      CLEAR gt_bin.
      READ DATASET p_fsrv INTO gt_bin-dati.
      IF sy-subrc IS INITIAL.
        APPEND gt_bin.
      ELSE.
        EXIT.
      ENDIF.
    ENDDO.
    CLOSE DATASET p_fsrv.
  ELSE.
    MESSAGE e001. "Errore di apertura file
  ENDIF.

  LOOP AT gt_bin.
    CLEAR: gs_dati, gt_split[].
    SPLIT gt_bin-dati AT ';' INTO TABLE gt_split.
    LOOP AT gt_split.
      ASSIGN COMPONENT sy-tabix OF STRUCTURE gs_dati TO <gf_campo>.
      IF sy-subrc IS INITIAL.
        DESCRIBE FIELD <gf_campo> TYPE gv_type.
        IF gv_type = 'P'.
          TRANSLATE gt_split USING ',.'.
        ENDIF.
        <gf_campo> = gt_split.
      ENDIF.
    ENDLOOP.
    APPEND gs_dati TO gt_dati.
  ENDLOOP.

*----------------------------------------------------------------------*

mercoledì 9 novembre 2016

Caricamento di un infotype

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
DATA: gv_msg   TYPE STRING,
      gv_count TYPE I,
      gv_total TYPE I.

DATA: BEGIN OF gs_dati,
        pernr       TYPE PERNR_D,
        begda       TYPE BEGDA,
        endda       TYPE ENDDA,
        tipo        TYPE ZTIPO_CMP,
        soglia_imp  TYPE ZSOGLIA_IMP,
        soglia_perc TYPE ZSOGLIA_PERC,
        target_imp  TYPE ZTARGET_IMP,
        target_perc TYPE ZTARGET_PERC,
        cap_imp     TYPE ZCAP_IMP,
        cap_perc    TYPE ZCAP_PERC,
        note        TYPE CHAR50,
        subty       TYPE SUBTY,
        aedtm       TYPE AEDAT,
        uname       TYPE AENAM,
      END OF gs_dati.

DATA: gs_9008   TYPE p9008,
      gs_return TYPE BAPIRETURN1,
      gs_key    TYPE BAPIPAKEY.

DATA gt_dati LIKE STANDARD TABLE OF gs_dati WITH HEADER LINE.

*----------------------------------------------------------------------*
* LAYOUT                                                               *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS: pa_flcl TYPE STRING LOWER CASE,
            pa_test AS CHECKBOX.
SELECTION-SCREEN END OF BLOCK b1.

*----------------------------------------------------------------------*
* PROGRAM BODY                                                         *
*----------------------------------------------------------------------*
START-OF-SELECTION.
  IF pa_flcl IS INITIAL.
    MESSAGE e002. "Indicare il file locale
  ENDIF.
  PERFORM read_xls.

  IF gt_dati[] IS NOT INITIAL.
    DESCRIBE TABLE gt_dati LINES gv_total.
    LOOP AT gt_dati.
      CLEAR gs_9008.
      MOVE-CORRESPONDING gt_dati TO gs_9008.
      gs_9008-infty = '9008'.
      CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'
        EXPORTING
          number = gt_dati-pernr
        IMPORTING
          return = gs_return.
      IF gs_return-type <> 'E'.
        CLEAR: gs_return, gs_key.
        CALL FUNCTION 'HR_INFOTYPE_OPERATION'
          EXPORTING
            INFTY     = '9008'
            NUMBER    = gs_9008-pernr
            RECORD    = gs_9008
            OPERATION = 'INS'
            NOCOMMIT  = pa_test
          IMPORTING
            RETURN    = gs_return
            KEY       = gs_key.
        IF gs_return-type = 'E'.
          CLEAR gv_msg.
          MESSAGE ID gs_return-id
                  TYPE gs_return-type
                  NUMBER gs_return-number
                  WITH gs_return-message_v1
                       gs_return-message_v2
                       gs_return-message_v3
                       gs_return-message_v4
                  INTO gv_msg.
          WRITE: / gt_dati-pernr,
                   gt_dati-begda,
                   gt_dati-endda,
                   gt_dati-subty,
                   '-',
                   gv_msg.
        ELSE.
          ADD 1 TO gv_count.
        ENDIF.
        CALL FUNCTION 'BAPI_EMPLOYEE_DEQUEUE'
          EXPORTING
            number = gt_dati-pernr.
      ELSE.
        CLEAR gv_msg.
        MESSAGE ID gs_return-id
                TYPE gs_return-type
                NUMBER gs_return-number
                WITH gs_return-message_v1
                     gs_return-message_v2
                     gs_return-message_v3
                     gs_return-message_v4
                INTO gv_msg.
        WRITE: / gt_dati-pernr,
                 gt_dati-begda,
                 gt_dati-endda,
                 gt_dati-subty,
                 '-',
                 gv_msg.
      ENDIF.
    ENDLOOP.
  ENDIF.

  WRITE: / 'Righe processate correttamente:',
           gv_count,
           'su',
           gv_total.

END-OF-SELECTION.
  EXIT.

*----------------------------------------------------------------------*

martedì 8 novembre 2016

L'imbarazzo di Dio, Marco Pozza

L'imbarazzo di Dio
Di Marco Pozza
Editore: San Paolo


Lingua: Italiano | Numero di pagine: 170 | Isbn-13: 9788821593017 | Data di pubblicazione: 2014-xx-xx | Genere: Religione & Spiritualità

lunedì 7 novembre 2016

Passare una select-option a una function

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
TABLES: KNA1.

DATA: gs_range   TYPE fbs_generic_range,
      gv_kunnr_r TYPE fb_t_generic_range.

*----------------------------------------------------------------------*
* LAYOUT                                                               *
*----------------------------------------------------------------------*
SELECT-OPTIONS so_kunnr FOR KNA1-KUNNR.

*----------------------------------------------------------------------*
* PROGRAM BODY                                                         *
*----------------------------------------------------------------------*
START-OF-SELECTION.

  LOOP AT so_kunnr.
    MOVE-CORRESPONDING so_kunnr TO gs_range.
    APPEND gs_range TO gv_kunnr_r.
  ENDLOOP.

  CALL FUNCTION 'ZFUNCTION'
    EXPORTING
      i_kunnr_r = gv_kunnr_r
    EXCEPTIONS
      EMPTY     = 1
      OTHERS    = 2.



FUNCTION ZFUNCTION.
*"----------------------------------------------------------------------
*"*"Interfaccia locale:
*"  IMPORTING
*"     VALUE(I_KUNNR_R) TYPE  FB_T_GENERIC_RANGE
*"  EXCEPTIONS
*"      EMPTY
*"----------------------------------------------------------------------

  DATA ls_range TYPE FBS_GENERIC_RANGE.
  
  RANGES lr_kunnr FOR kna1-kunnr.

  LOOP AT I_KUNNR_R INTO ls_range.
    lr_kunnr-sign = ls_range-sign.
    lr_kunnr-option = ls_range-option.
    lr_kunnr-low = ls_range-low.
    lr_kunnr-high = ls_range-high.
    APPEND lr_kunnr.
  ENDLOOP.

venerdì 4 novembre 2016

Selezionare una cartella partendo dal desktop e salvare un file localmente

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
TYPES: BEGIN OF ty_appr_c,
         line(70) TYPE c,
       END OF ty_appr_c.
DATA: gt_appr_c TYPE STANDARD TABLE OF ty_appr_c,
      gs_appr_c LIKE LINE OF gt_appr_c.

*----------------------------------------------------------------------*
* LAYOUT                                                               *
*----------------------------------------------------------------------*
PARAMETERS: pa_fname TYPE string,
            pa_floc  TYPE string.

*----------------------------------------------------------------------*
* EVENTS                                                               *
*----------------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR pa_floc.
  DATA: lv_path TYPE string,
        lv_fs   TYPE c.
  cl_gui_frontend_services=>get_desktop_directory(
    CHANGING
      desktop_directory = lv_path ).
  cl_gui_cfw=>update_view( ).
  cl_gui_frontend_services=>directory_browse(
    EXPORTING
      window_title    = 'Seleziona cartella'
      initial_folder  = lv_path
    CHANGING
      selected_folder = lv_path ).
  cl_gui_frontend_services=>get_file_separator(
    CHANGING
      file_separator = lv_fs ).
  CONCATENATE lv_path lv_fs
         INTO pa_floc.

*----------------------------------------------------------------------*
* FORM SAVE_LOCAL                                                      *
*----------------------------------------------------------------------*
FORM save_local.

  CONCATENATE pa_floc
              pa_fname
         INTO pa_floc.
  cl_gui_frontend_services=>gui_download(
    EXPORTING
      filename = pa_floc
    CHANGING
      data_tab = gt_appr_c ).

ENDFORM.                    "save_local

*----------------------------------------------------------------------*

giovedì 3 novembre 2016

Rook n

/rʊk/

Traducendo lo Shogi ho imparato un nuovo significato di questo vocabolo.

EnglishItaliano
rook n(chess piece: castle)torre nf
rook [sb] vtr(swindle)raggirare, imbrogliare, fregare vtr

Each rook and bishop scores 5 points and all other pieces except kings score 1 point each.
Ogni torre o alfiere vale 5 punti e tutti gli altri pezzi (tranne il re) valgono 1 punto ciascuno.

mercoledì 2 novembre 2016

Contropiede, Marco Pozza

Contropiede
Di Marco Pozza
Editore: San Paolo


Lingua: Italiano | Numero di pagine: 144 | Formato: Paperback | Isbn-13: 9788821574221 | Data di pubblicazione: 01/03/2012 | Genere: Narrativa & Letteratura - Religione & Spiritualità - Adolescenti

venerdì 28 ottobre 2016

Tiny Epic Quest

martedì 25 ottobre 2016

Recuperare il manager di una Unità Organizzativa

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
DATA: gv_plvar TYPE PLVAR.

*----------------------------------------------------------------------*
* EVENTS                                                               *
*----------------------------------------------------------------------*
AT SELECTION-SCREEN.
  CALL FUNCTION 'RH_GET_PLVAR'
    IMPORTING
      plvar = gv_plvar.

*----------------------------------------------------------------------*
* FORM RETRIEVE_MANAGER                                                *
*----------------------------------------------------------------------*
FORM retrieve_manager USING pv_org_unit TYPE SOBID
                   CHANGING pv_manager  TYPE PD_OBJID_R
                            pv_plans    TYPE PLANS.

  DATA BEGIN OF lt_objec OCCURS 0.
          INCLUDE STRUCTURE OBJEC.
  DATA END OF lt_objec.
  DATA: lv_found TYPE C,
        lv_sobid TYPE sobid.

  lv_sobid = pv_org_unit.
  WHILE lv_found IS INITIAL.
    CALL FUNCTION 'RH_STRUC_GET'
      EXPORTING
        ACT_OTYPE      = 'O'
        ACT_OBJID      = lv_sobid
        ACT_WEGID      = 'BOSSONLY'
        ACT_PLVAR      = gv_plvar
      TABLES
        RESULT_OBJEC   = lt_objec
      EXCEPTIONS
        NO_PLVAR_FOUND = 1
        NO_ENTRY_FOUND = 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.
    READ TABLE lt_objec WITH KEY otype = 'P'.
    IF SY-SUBRC = 0.
      pv_manager = lt_objec-objid.
      READ TABLE lt_objec WITH KEY otype = 'S'.
      pv_plans = lt_objec-objid.
      lv_found = 'X'.
    ELSE.
      SELECT SINGLE sobid
        FROM hrp1001
        INTO lv_sobid
       WHERE otype = 'O'
         AND objid = lv_sobid
         AND plvar = gv_plvar
         AND rsign = 'A'
         AND relat = '002'
         AND begda <= SY-DATUM
         AND endda >= SY-DATUM.
    ENDIF.
  ENDWHILE.

ENDFORM.                    "retrieve_manager

*----------------------------------------------------------------------*

lunedì 24 ottobre 2016

Il deserto è la mia cattedrale, Claude Rault

Il deserto è la mia cattedrale
Il vescovo del Sahara racconta
Di Claude Rault
Editore: EMI (Vita di missione. Nuova serie)


Lingua: Italiano | Numero di pagine: 191 | Formato: Paperback | Isbn-13: 9788830722682 | Data di pubblicazione: 2015-09-xx | Traduttore: Comunità dei Padri bianchi di Treviglio - Prefazione: Guido Dotti | Genere: Biografia - Non-narrativa - Religione & Spiritualità

venerdì 21 ottobre 2016

Leggere un file CSV

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
TYPES: BEGIN OF kcde_intern_struc.
         INCLUDE STRUCTURE kcde_cells.
TYPES: END OF kcde_intern_struc.
TYPES: kcde_intern TYPE kcde_intern_struc OCCURS 0.

DATA: gt_input    TYPE kcde_intern,
      gs_input    LIKE LINE OF gt_input.

*----------------------------------------------------------------------*
* LAYOUT                                                               *
*----------------------------------------------------------------------*
PARAMETERS: pa_flcl TYPE localfile.

*----------------------------------------------------------------------*
* PROGRAM BODY                                                         *
*----------------------------------------------------------------------*
START-OF-SELECTION.

  CALL FUNCTION 'KCD_CSV_FILE_TO_INTERN_CONVERT'
    EXPORTING
      i_filename      = pa_flcl
      i_separator     = ';'
    TABLES
      e_intern        = gt_input
    EXCEPTIONS
      upload_csv      = 1
      upload_filetype = 2
      OTHERS          = 3.

giovedì 20 ottobre 2016

Wager n

/ˈweɪdʒə/

Traducendo Hold your Breath! ho imparato questo vocabolo.

EnglishItaliano
wager n(bet)puntata, scommessa nf
Ellen won her wager that the boss would be late arriving at work the day after the office party.
Ellen vinse la scommessa che il capo sarebbe arrivato tardi al lavoro il giorno dopo la festa dell'ufficio.
wager [sth] vtr(money, bet)puntare, scommettere vtr
Ben wagered £100 on the race.
Ben puntò 100 £ sulla corsa.

There is nothing to wager, nothing to gain...well, maybe bragging rights if you return to the surface alive.
Non c’è niente in palio, nulla da guadagnare... be’, forse il diritto di vantarti se torni vivo in superficie.

sabato 15 ottobre 2016

Fib n

/ˈfɪbəʳ/

Traducendo Chopstick Dexterity MegaChallenge 3000 ho imparato questo vocabolo.

EnglishItaliano
fibber ninformal (person who tells small lies)contafrottole, contaballe nm

We’re just big fibbers aren’t we...
Siamo solo dei gran cacciaballe...

venerdì 14 ottobre 2016

Four, Veronica Roth

Four
Di Veronica Roth
Editore: De Agostini (Le Gemme)


Lingua: Italiano | Numero di pagine: 288 | Isbn-13: 9788851125714 | Data di pubblicazione: 2015-01-xx | Genere: Narrativa & Letteratura - Fantascienza - Adolescenti

giovedì 13 ottobre 2016

Brag vi

/bræɡ/

Traducendo Lemonade Stand ho imparato questo vocabolo.

EnglishItaliano
brag vi(talk boastfully)vantarsi v rif
I don't want to be friends with someone who always brags.
Non voglio essere amico di qualcuno che sta sempre a vantarsi.
brag n(boastful talk)vanteria, bravata, spacconata nf
Joanna's brags always exaggerate the truth.
Le vanterie di Joanna distorcono sempre la realtà dei fatti.
brag n(person who boasts)persona che si vanta, persona che sta sempre a vantarsi, spaccone nm
Luther is a brag; don't let him upset you.
Luther è uno spaccone, non dar peso a ciò che dice.

Earn the most money and claim bragging rights for the entire school year!
Guadagna più soldi e conquista il diritto di vantarti per l’intero anno scolastico!

domenica 9 ottobre 2016

Crave vtr

/kreɪv/

Traducendo Zombie Tower 3D ho imparato questo vocabolo.

EnglishItaliano
crave [sth] vtr(desire)bramare, desiderare ardentemente vtr
The school food wasn't bad, but Kevin craved his mother's cooking.
Il cibo della mensa scolastica non era male, ma Kevin desiderava ardentemente le pietanze di sua madre.

Zombies will appear out of nowhere every so often, craving for your flesh.
Ogni tanto gli zombie appariranno dal nulla, bramando la vostra carne.

martedì 4 ottobre 2016

Dracula's Feast

mercoledì 28 settembre 2016

Tutti i racconti (1931-1936), H.P. Lovecraft

Tutti i racconti (1931-1936)
Di H. P. Lovecraft
Editore: Mondadori


Lingua: Italiano | Numero di pagine: 770 | Isbn-13: 9788804361282 | Data di pubblicazione: 01/06/1992 | Traduttore: Stefano Galli - Giuseppe Lippi - Claudio De Nardi - Gianna Lonza | Curatore: Giuseppe Lippi | Illustrazione di copertina: Karel Thole | Genere: Narrativa & Letteratura - Horror - Fantascienza & Fantasy

martedì 27 settembre 2016

Allegiant, Veronica Roth

Allegiant
Di Veronica Roth
Editore: De Agostini (Best)


Lingua: Italiano | Numero di pagine: 538 | Isbn-13: 9788851132217 | Data di pubblicazione: 2015-xx-xx | Traduttore: Roberta Verde | Genere: Narrativa & Letteratura - Fantascienza - Adolescenti

giovedì 22 settembre 2016

Offset vtr

/ˈɒfˌsɛt/

Traducendo Under My Bed ho imparato un nuovo significato di questo vocabolo.

EnglishItaliano
offset [sth] vtr(counterbalance [sth])compensare, controbilanciare vtr
The gains offset the losses.
Le entrate controbilanciano le perdite.

To offset the cost of shipping to International backers, all International orders will receive the deluxe version of Under My Bed regardless of the amount pledged.
Per compensare il costo di spedizione ai sostenitori internazionali, tutti gli ordini internazionali riceveranno la versione deluxe di Under My Bed, indipendentemente dalla cifra promessa.

mercoledì 21 settembre 2016

Shogi

martedì 20 settembre 2016

Unreal Estate

lunedì 12 settembre 2016

Insurgent, Veronica Roth

Insurgent
Di Veronica Roth
Editore: De Agostini (Best)


Lingua: Italiano | Numero di pagine: 510 | Isbn-13: 9788851132231 | Data di pubblicazione: 2015-xx-xx | Traduttore: R. Verde | Genere: Narrativa & Letteratura - Fantascienza - Adolescenti

mercoledì 7 settembre 2016

Bethel Woods

martedì 6 settembre 2016

BATTALIA: The Stormgates

Under My Bed

venerdì 26 agosto 2016

Crest n

/krɛst/

Traducendo Bethel Woods ho imparato questo vocabolo.

EnglishItaliano
crest n(top of a wave)cresta nf
The crest of the wave was 10 metres tall.
La cresta dell'onda era alta dieci metri.
crest n(hill, mountain: summit)vetta, sommità, cima nf
In the afternoon we made it to the crest of the mountain.
Nel pomeriggio abbiamo raggiunto la vetta del monte.
crest n(bird: ornamental head feathers)cresta nf
The colourful crest is seen only in the male.
La cresta variopinta è presente solo nel maschio.
crest n(heraldry: shield, emblem)cimiero, stemma nm
The crest is divided diagonally by a yellow band.
Il cimiero è tagliato diagonalmente da una striscia gialla.

Now a group of young people, wearing the crest of the orphanage, return to finish the work that was started long ago.
Ora un gruppo di giovani, con addosso lo stemma dell’orfanotrofio, è tornato per finire il lavoro cominciato molto tempo prima.

giovedì 25 agosto 2016

Divergent, Veronica Roth

Divergent
Di Veronica Roth
Editore: De Agostini


Lingua: Italiano | Numero di pagine: 480 | Isbn-13: 9788841871423 | Data di pubblicazione: 22/03/2012 | Genere: Narrativa & Letteratura - Fantascienza - Adolescenti

martedì 16 agosto 2016

Mint Works

mercoledì 10 agosto 2016

Gondola

martedì 19 luglio 2016

Roots of Mali

lunedì 18 luglio 2016

Pietà per gli insonni, Jeffery Deaver

Pietà per gli insonni
Di Jeffery Deaver
Editore: Sonzogno


Lingua: Italiano | Numero di pagine: 431 | Isbn-10: 8845423190 | Data di pubblicazione: 01/09/2004 | Traduttore: Mariapaola Dèttore | Genere: Criminalità - Narrativa & Letteratura - Mistero & Gialli

mercoledì 13 luglio 2016

Imp n

/ɪmp/

Traducendo Imps: Devilish Duels ho imparato questo vocabolo.

EnglishItaliano
imp n(evil spirit)folletto nm
imp nfigurative (mischievous child)peste nf, monello, discolo nm

Visto che compare nel titolo, ho preferito lasciarlo intradotto.

Each player controls a team of 4 mischievous Imps.
Ogni giocatore controlla una squadra di 4 dispettosi Imp.

giovedì 7 luglio 2016

L'occhio del purgatorio, Jacques Spitz

L'occhio del purgatorio
Di Jacques Spitz
Editore: Mondadori (Urania)


Lingua: Italiano | Numero di pagine: 128 | Isbn-10: A000026756 | Data di pubblicazione: 06/01/1985

sabato 2 luglio 2016

Tutti i racconti (1927-1930), H.P. Lovecraft

Tutti i racconti (1927-1930)
Di H. P. Lovecraft
Editore: Mondadori


Lingua: Italiano | Numero di pagine: 582 | Isbn-13: 9788804347699 | Data di pubblicazione: 01/06/1991 | Traduttore: Giuseppe Lippi - Claudio De Nardi - Gianna Lonza | Illustrazione di copertina: Karel Thole | Genere: Narrativa & Letteratura - Horror - Fantascienza & Fantasy

martedì 28 giugno 2016

Imps Devilish Duels

lunedì 27 giugno 2016

Last-ditch n

/lɑːstdɪtʃ/

Traducendo Fugitive ho imparato questo vocabolo.

EnglishItaliano
last ditch nultimo sangue, tentativo disperato
last-ditch effort n(desperate final attempt)ultimo disperato tentativo nm

If the Fugitive is far ahead of the Marshal, there is a last­-ditch option.
Se il Fuggitivo è molto più avanti dello Sceriffo, c’è un’ultima disperata opzione.

lunedì 20 giugno 2016

Wondrous adj

/ˈwʌndrəs/

Traducendo Watchmen of Destiny ho imparato questo vocabolo.

EnglishItaliano
wondrous adj(wonderful, amazing)splendido, meraviglioso, fantastico, sorprendente agg
The exhibition provides a wondrous display of sculptures built by local artists.
La mostra offre una splendida esposizione di sculture create da artisti locali.

Hidden deep in the heart of your Kingdom lies a wondrous sight; a tree whose magic grants anyone fortunate enough to partake of its fruit strength beyond measure.
Nascosto nel profondo del cuore del vostro Regno si trova uno spettacolo fantastico: un albero la cui magia concede a chiunque sia abbastanza fortunato da mangiare dei suoi frutti una forza oltre misura.

mercoledì 15 giugno 2016

Fugitive

martedì 14 giugno 2016

Segni di vita, Robin Cook

Segni di vita
Di Robin Cook
Editore: Sperling & Kupfer


Lingua: Italiano | Numero di pagine: 356 | Isbn-10: 887824497X | Data di pubblicazione: 01/01/1995 | Traduttore: L. Pignatti

venerdì 10 giugno 2016

Hone vtr

/həʊn/

Traducendo Tavarua ho imparato questo vocabolo.

EnglishItaliano
hone [sth] vtrfigurative (refine: skills)affinare, perfezionare vtr
Jane worked as an intern to continue to hone her skills before she applied for graduate school.
Jane ha fatto un tirocinio per affinare le sue conoscenze prima di fare domanda per l'università.
hone [sth] vtr(sharpen: a blade)affilare vtr
The butcher honed his knife while he talked to a customer.
Il macellaio affilava il coltello mentre parlava con un cliente.
hone n(whetstone)cote, pietra nf
My grandfather still sharpens his razors on his old hone.
Mio nonno affila ancora il rasoio con questa sua vecchia pietra.

You’ve been practicing hard and honing your skills, and you’ve just cracked the top 50 surfers in the world!
Ti sei allenato duramente e hai affinato le tue abilità: sei appena entrato nei primi 50 surfisti del mondo!

giovedì 9 giugno 2016

martedì 31 maggio 2016

Clunky adj

/ˈklʌŋkɪ/

Traducendo Hoard ho imparato questo vocabolo.

EnglishItaliano
clunky adj(cumbersome)goffo, scoordinato, sgraziato, maldestro agg

Since chests are large and clunky, when one is secured, one dragon card must be flipped to the red awake side.
Dal momento che i forzieri sono grandi e rumorosi, quando ne metti uno al sicuro, una carta Drago deve essere girata con il lato rosso sveglio in su.

martedì 24 maggio 2016

Tabella ALV orientata agli oggetti

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
TYPES: BEGIN OF ty_out,
         [...]
       END OF ty_out.
DATA: gt_out TYPE TABLE OF ty_out,
      gs_out TYPE ty_out.

DATA gr_alv TYPE REF TO CL_SALV_TABLE.

*----------------------------------------------------------------------*
* PROGRAM BODY                                                         *
*----------------------------------------------------------------------*
START-OF-SELECTION.
  [...]

END-OF-SELECTION.
  PERFORM output_alv.

*----------------------------------------------------------------------*
* FORM OUTPUT_ALV                                                      *
*----------------------------------------------------------------------*
FORM output_alv.

  TRY.
      CL_SALV_TABLE=>FACTORY(
        IMPORTING
          R_SALV_TABLE = gr_alv
        CHANGING
          T_TABLE      = gt_out ).
      PERFORM set_settings.
      gr_alv->display( ).
    CATCH cx_salv_msg.
      " error handling
      RETURN.
  ENDTRY.

ENDFORM.                    "output_alv

*----------------------------------------------------------------------*
* FORM SET_SETTINGS                                                    *
*----------------------------------------------------------------------*
FORM set_settings.

  DATA: ls_key        TYPE SALV_S_LAYOUT_KEY,
        lo_cols       TYPE REF TO CL_SALV_COLUMNS_TABLE,
        lo_col        TYPE REF TO CL_SALV_COLUMN,
        lo_events     TYPE REF TO CL_SALV_EVENTS_TABLE,
        lo_funcs      TYPE REF TO CL_SALV_FUNCTIONS_LIST,
        lo_layout     TYPE REF TO CL_SALV_LAYOUT,
        lo_display    TYPE REF TO CL_SALV_DISPLAY_SETTINGS,
        lo_selections TYPE REF TO CL_SALV_SELECTIONS,
        lv_text_s     TYPE SCRTEXT_S,
        lv_text_m     TYPE SCRTEXT_M,
        lv_text_l     TYPE SCRTEXT_L.

  DEFINE set_column.
    lv_text_s = lv_text_m = lv_text_l = &2.
    lo_col = lo_cols->get_column( &1 ).
    lo_col->set_short_text( lv_text_s ).
    lo_col->set_medium_text( lv_text_m ).
    lo_col->set_long_text( lv_text_l ).
  END-OF-DEFINITION.

*Columns
  lo_cols = gr_alv->get_columns( ).
  lo_cols->set_optimize( 'X' ).

  set_column 'FIELD' 'Field description'.
  [...]

*Layouts
  ls_key-report = SY-REPID.
  lo_layout = gr_alv->get_layout( ).
  lo_layout->set_key( ls_key ).
  lo_layout->set_default( 'X' ).
  lo_layout->set_save_restriction( ).

*Functions
  lo_funcs = gr_alv->get_functions( ).
  lo_funcs->set_all( ).

*Display Settings
  lo_display = gr_alv->get_display_settings( ).
  lo_display->set_striped_pattern( 'X' ).

*Selections
  lo_selections = gr_alv->get_selections( ).
  lo_selections->set_selection_mode(
    IF_SALV_C_SELECTION_MODE=>ROW_COLUMN ).

ENDFORM.                    "set_settings

mercoledì 18 maggio 2016

Piedi d'argilla, Terry Pratchett

Piedi d'argilla
Di Terry Pratchett
Editore: Salani


Lingua: Italiano | Numero di pagine: 346 | Isbn-10: 8884515157 | Data di pubblicazione: 01/01/2005 | Traduttore: Antonella Pieretti | Genere: Narrativa & Letteratura - Umorismo - Fantasy

martedì 17 maggio 2016

Hoard

venerdì 13 maggio 2016

Thin Ice

martedì 10 maggio 2016

Anachrony

mercoledì 27 aprile 2016

Stash n

/stæʃ/

Traducendo Exposed ho imparato questo vocabolo.

EnglishItaliano
stash n(secret reserves)scorte segrete, riserve segrete nf
Police discovered a stash of guns in the house.
Nella casa la polizia ha scoperto delle riserve segrete di armi.
stash [sth] vtr(store or hide for future)nascondere scorte, nascondere riserve, mettere via, mettere da parte vtr
The old man stashed his savings in a shoebox.
L'anziano metteva da parte i suoi risparmi in una scatola di scarpe.

If you are ​unexposed​, put this Wallet in your Stash.
Se non sei stato smascherato, colloca questo Portafoglio nella tua Riserva.

venerdì 22 aprile 2016

Uomini d'arme, Terry Pratchett

Uomini d'arme
Di Terry Pratchett
Editore: Salani


Lingua: Italiano | Numero di pagine: 368 | Isbn-10: 8884512832 | Data di pubblicazione: 01/04/2003 | Traduttore: Antonella Pieretti | Genere: Narrativa & Letteratura - Umorismo - Fantasy

martedì 19 aprile 2016

Exposed

martedì 5 aprile 2016

A me le guardie!, Terry Pratchett

A me le guardie!
Di Terry Pratchett
Editore: Salani


Lingua: Italiano | Numero di pagine: 358 | Isbn-10: 888451181X | Data di pubblicazione: 01/05/2002 | Traduttore: Antonella Pieretti | Genere: Narrativa & Letteratura - Umorismo - Fantasy

giovedì 24 marzo 2016

Tutti i racconti (1923-1926), H.P. Lovecraft

Tutti i racconti (1923-1926)
Di H. P. Lovecraft
Editore: Mondadori (Oscar Narrativa 1066)


Lingua: Italiano | Numero di pagine: 526 | Isbn-13: 9788804334484 | Data di pubblicazione: 01/06/1990 | Traduttore: G. Lonza - Giuseppe Lippi - Claudio De Nardi | Genere: Narrativa & Letteratura - Horror - Fantascienza & Fantasy

mercoledì 16 marzo 2016

Inserire o modificare report in modo massivo

*----------------------------------------------------------------------*
* LAYOUT                                                               *
*----------------------------------------------------------------------*
PARAMETERS: pa_src(255) TYPE C LOWER CASE.

*----------------------------------------------------------------------*
* FORM INSERT_REPORT                                                   *
*----------------------------------------------------------------------*
FORM insert_report.

  TYPES: BEGIN OF ty_datatab,
           line(255) TYPE C,
         END OF ty_datatab.
  DATA: lt_datatab TYPE TABLE OF ty_datatab,
        ls_datatab TYPE OF lt_datatab.
  DATA: lt_filetab TYPE TABLE OF ty_datatab,
        ls_filetab TYPE lt_filetab.
  DATA: lv_filename TYPE STRING,
        lv_progname TYPE PROGNAME,
        lv_korr     TYPE TRKORR,
        lv_flag     TYPE C.

  lv_filename = pa_src.
  CL_GUI_FRONTEND_SERVICES=>GUI_UPLOAD(
    EXPORTING
      FILENAME = lv_filename
    CHANGING
      DATA_TAB = lt_filetab ).
  LOOP AT lt_filetab INTO ls_filetab.
    lv_filename = ls_filetab.
    CL_GUI_FRONTEND_SERVICES=>GUI_UPLOAD(
      EXPORTING
        FILENAME = lv_filename
      CHANGING
        DATA_TAB = lt_datatab ).
    READ TABLE lt_datatab INTO ls_datatab INDEX 3.
    lv_progname = ls_datatab.
    SHIFT lv_progname BY 2 PLACES.
    TRANSLATE lv_progname USING '. '.
    TRANSLATE lv_progname TO UPPER CASE.
    CONDENSE lv_progname.
    CALL FUNCTION 'RS_CORR_INSERT'
      EXPORTING
        OBJECT                         = lv_progname
        OBJECT_CLASS                   = 'PROG'
        DEVCLASS                       = 'ZBO'
        KORRNUM                        = lv_korr
        SUPPRESS_DIALOG                = lv_flag
      IMPORTING
        KORRNUM                        = lv_korr
      EXCEPTIONS
        CANCELLED                      = 1
        PERMISSION_FAILURE             = 2
        UNKNOWN_OBJECTCLASS            = 3
        OTHERS                         = 4.
    IF SY-SUBRC <> 0.
*      MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    lv_flag = 'X'.
    INSERT REPORT lv_progname FROM lt_datatab.
  ENDLOOP.

ENDFORM.

martedì 15 marzo 2016

Watchmen of Destiny

lunedì 14 marzo 2016

Orchard n

/ˈɔːtʃəd/

Traducendo Mi Tierra: Nueva Era ho imparato questo vocabolo.

EnglishItaliano
orchard n(fruit trees)frutteto nm
Beyond the vegetable garden is an orchard with a variety of fruit trees.
Oltre l'orto c'è un frutteto con diversi alberi da frutto.

Far from the din of the city, you have bought fertile land, rich in pastures, with a small barn and an apple orchard.
Lontano dal frastuono della città, avete comprato un terreno fertile, ricco di pascoli, con un piccolo fienile e un meleto.

giovedì 10 marzo 2016

Mr. Mercedes, Stephen King

Mr. Mercedes
Di Stephen King
Editore: Sperling & Kupfer (Pandora)


Lingua: Italiano | Numero di pagine: 480 | Isbn-13: 9788820057190 | Data di pubblicazione: 30/09/2014 | Traduttore: Giovanni Arduino | Genere: Criminalità - Narrativa & Letteratura - Mistero & Gialli

martedì 23 febbraio 2016

mercoledì 17 febbraio 2016

Dung n

/dʌŋ/

Traducendo Karmaka ho imparato questo vocabolo.

EnglishItaliano
dung n(manure, animal excrement)sterco, letame, concime nm
Cow dung is collected for both fuel and fertilizer.
Lo sterco di vacca viene raccolto sia come combustibile che come fertilizzante.
dung [sth] vtr(fertilize with manure)concimare vtr
They clean out the pig shed and dung the fields in spring.
A primavera puliscono il recinto dei maiali e concimano i campi.

Populate the Karmic Ladder: each player places their token at the Dung Beetle level.
Popolate la Scala Karmica: Ciascun giocatore piazza il suo segnalino al livello dello Scarabeo Stercorario.

martedì 16 febbraio 2016

La stanza della morte, Jeffery Deaver

La stanza della morte
Di Jeffery Deaver
Editore: Rizzoli (Best)


Lingua: Italiano | Numero di pagine: 592 | Isbn-13: 9788817066174 | Data di pubblicazione: 2013-06-xx | Traduttore: Seba Pezzani - F. Siracusa | Genere: Criminalità - Narrativa & Letteratura - Mistero & Gialli

Trick n

/ˈtrɪk/

Traducendo Odin's Ravens (second edition) mi sono imbattuto in questi vocaboli veramente tricky.

EnglishItaliano
trick nscherzo, trucco, inganno nm, fregatura nf
tricky adjcomplicato, difficoltoso, difficile, furbo, scaltro agg
trickery ninganno, imbroglio, raggiro, artificio nm
trickster nprestigiatore, imbroglione, truffatore nm

La parte interessante è stata metterli tutti insieme: le traduzioni date per trickery non mi convincevano nell'ambientazione del gioco (troppo forti e negative, oltre che inesatte), per cui ho ripiegato su astuzia, concordando il resto. Ecco le mie scelte.

They can also ask for help from Loki, god of tricks and mischief, to make their path easier or the other raven’s path trickier!
Possono anche chiedere l'aiuto di Loki, dio delle astuzie e dei dispetti, per rendere il proprio tracciato più facile o quello dell'altro corvo più complicato!
Once a Loki card is used it is removed from the game, meaning players can never use trickery more than eight times in a game.
Una volta che una carta Loki è stata usata viene rimossa dal gioco, il che significa che i giocatori non possono mai utilizzare le astuzie più di otto volte per partita.
Players should be as tricky as the trickster to make the best use of their cards.
I giocatori dovrebbero essere astuti come volpi per usare al meglio le loro carte.