sabato 28 novembre 2015

Kiln n

/kɪln/

Traducendo Dice Brewing ho imparato questo vocabolo.

EnglishItaliano
kiln n(oven: for firing pottery)fornace nf, forno nm
Kilns get much hotter than ordinary cooking ovens.
Le fornaci raggiungono temperature molto più alte dei normali forni da cucina.

Light malts become dark malts by being roasted in a kiln!
I malti chiari diventano malti scuri grazie alla tostatura nell'essiccatoio!

venerdì 27 novembre 2015

Recuperare la mail dell'utente SAP

*----------------------------------------------------------------------*
* FORM RETRIEVE_EMAIL                                                  *
*----------------------------------------------------------------------*
FORM retrieve_email USING pv_uname TYPE XUBNAME
                    CHANGING pv_mail TYPE AD_SMTPADR.

  DATA: lv_addrn TYPE AD_ADDRNUM,
        lv_persn TYPE AD_PERSNUM.

  SELECT SINGLE ADDRNUMBER PERSNUMBER
    FROM USR21
    INTO (lv_addrn, lv_persn)
   WHERE BNAME = pv_uname.
  SELECT SINGLE SMTP_ADDR
    FROM ADR6
    INTO pv_mail
   WHERE ADDRNUMBER = lv_addrn
     AND PERSNUMBER = lv_persn
     AND HOME_FLAG  = 'X'.

ENDFORM.

giovedì 26 novembre 2015

Esporre in un Adobe Form una foto conservata in archiviazione documentale

INTERFACCIA

Dati globali
URI TYPE SAEURI

Inizializzazione codifica
CALL FUNCTION 'HRWPC_RFC_EP_READ_PHOTO_URI'
  EXPORTING
    PERNR                  = PERNR
  IMPORTING
    URI                    = URI.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.


MODULO

----- data.sottom.sotto::ready:form - (FormCalc, client) -------------------------------------------
$.Campoimmagine1.value.#image.href = $.Campoditesto1;

Tipo: Campo di testo
Nome: Campoditesto1
Binding predefinito: $record.URI

Tipo: Campo immagine
Nome: Campoimmagine1
Binding predefinito: Normale

mercoledì 25 novembre 2015

Generazione di Subroutine Pool

*----------------------------------------------------------------------*
REPORT zfabio_subpool.

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
DATA: itab(72) OCCURS 0,
      zname(8) TYPE C.

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

  CLEAR: itab, itab[].
  APPEND 'PROGRAM SUBPOOL.' TO itab.
  APPEND 'FORM prova.' TO itab.
  APPEND '*scrivi qui il codice da provare' TO itab.
  APPEND 'ENDFORM.' TO itab.

  CALL FUNCTION 'TERM_CONTROL_EDIT'
    EXPORTING
      TITEL          = 'ABAP Code'
    TABLES
      TEXTLINES      = itab
    EXCEPTIONS
      USER_CANCELLED = 1
      OTHERS         = 2.
  IF SY-SUBRC <> 0.
    WRITE 'Elaborazione annullata!'.
  ELSE.
    GENERATE SUBROUTINE POOL itab NAME zname.
    IF SY-SUBRC = 0.
      PERFORM prova IN PROGRAM (zname).
    ELSE.
      WRITE 'Errore nel codice :-('.
    ENDIF.
  ENDIF.

END-OF-SELECTION.
  EXIT.

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

lunedì 23 novembre 2015

Mutter vtr

/ˈmʊtə/

Traducendo Lunarchitects ho imparato questo vocabolo.

EnglishItaliano
mutter vi(talk indistinctly)borbottare, biascicare, parlottare vi
Tim muttered to himself as he worked.
Tim borbottava fra sé e sé mentre lavorava.
mutter [sth] vtr(utter indistinctly)mormorare vtr
Brad muttered curses to himself.
Brad mormorava insulti a sé stesso.

“Well, Spot’s already made off with four others, maybe he thinks he’s designing his own base”, Bud muttered.
“Be’, Spot ne ha già portate via altre quattro, forse pensa di progettare una base tutta sua”, mormorò Bud.

venerdì 13 novembre 2015

Camera con vista, Edward Morgan Forster

Camera con vista
Di Edward Morgan Forster
Editore: Gruppo Editoriale l'Espresso


Lingua: Italiano | Numero di pagine: 223 | Isbn-13: 9788481304862 | Data di pubblicazione: 01/01/2002 | Traduttore: Marisa Caramella | Genere: Famiglia, Sesso & Relazioni - Narrativa & Letteratura - Rosa

giovedì 12 novembre 2015

Shift n

/ʃɪft/

Traducendo McJohny's ho imparato un nuovo significato di questo vocabolo.

EnglishItaliano
shift n(period of work)turno nm
This factory has three shifts: morning, evening and night.
Questa fabbrica effettua tre turni: mattina, pomeriggio e notte.

During the shift, you are free to adopt any managerial style. Encourage with a soothing voice, cajole and beg, or just scream at your underlings.
Durante il servizio, siete liberi di adottare qualsiasi stile direttivo: incoraggiare con voce suadente, blandire e supplicare o semplicemente urlare contro i vostri subalterni.

mercoledì 11 novembre 2015

martedì 10 novembre 2015

Inviare una mail con allegato zippato

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
DATA: gv_smtp_addr  TYPE AD_SMTPADR,
      gs_aedi_def   TYPE ZFAE_AEDI_DEF.

DATA: gt_body TYPE BCSY_TEXT,
      gt_dat  TYPE BCSY_TEXT,
      gt_txt  TYPE BCSY_TEXT,
      gt_zip  TYPE SOLIX_TAB,
      gs_body TYPE SOLI,
      gs_dat  TYPE SOLI,
      gs_txt  TYPE SOLI.

*---------------------------------------------------------------------*
* FORM BUILD_ZIP                                                      *
*---------------------------------------------------------------------*
FORM build_zip.

  DATA: lo_zipper   TYPE REF TO CL_ABAP_ZIP,
        lv_xstring  TYPE XSTRING,
        lv_filename TYPE STRING.

  CREATE OBJECT lo_zipper.

  IF gt_dat[] IS NOT INITIAL.
    CONCATENATE [...]
           INTO lv_filename.
    TRY.
        lv_xstring = cl_bcs_convert=>raw_to_xstring(
          it_soli     = gt_dat
          iv_codepage = '4110'
          iv_add_bom  = 'X' ).
      CATCH cx_bcs.
        MESSAGE E445(SO).
    ENDTRY.
    lo_zipper->add(
      name    = lv_filename
      content = lv_xstring ).
  ENDIF.

  IF gt_txt[] IS NOT INITIAL.
    CONCATENATE [...]
           INTO lv_filename.
    TRY.
        lv_xstring = cl_bcs_convert=>raw_to_xstring(
          it_soli     = gt_txt
          iv_codepage = '4110'
          iv_add_bom  = 'X' ).
      CATCH cx_bcs.
        MESSAGE E445(SO).
    ENDTRY.
    lo_zipper->add(
      name    = lv_filename
      content = lv_xstring ).
  ENDIF.

  lv_xstring = lo_zipper->save( ).

  TRY.
      gt_zip = cl_bcs_convert=>xstring_to_solix( lv_xstring ).
    CATCH cx_bcs.
      MESSAGE E445(SO).
  ENDTRY.

ENDFORM.                    "build_zip

*---------------------------------------------------------------------*
* FORM SEND_AS_ATTACHMENT                                             *
*---------------------------------------------------------------------*
FORM send_as_attachment.

  DATA: lo_mail        TYPE REF TO CL_BCS,
        lo_document    TYPE REF TO CL_DOCUMENT_BCS,
        lo_recipient   TYPE REF TO IF_RECIPIENT_BCS,
        lo_exception   TYPE REF TO CX_BCS,
        lv_sent_to_all TYPE OS_BOOLEAN,
        lv_filename    TYPE SO_OBJ_DES.

  TRY.
*   mail
      lo_mail = cl_bcs=>create_persistent( ).
*   corpo della mail
      lo_document = cl_document_bcs=>create_document(
        i_type    = 'RAW'
        i_text    = gt_body
        i_subject = gs_aedi_def-obj_descr ).
*   allegati
      IF gt_dat[] IS NOT INITIAL.
        CONCATENATE [...]
               INTO lv_filename.
        lo_document->add_attachment(
          i_attachment_type    = 'RAW'
          i_attachment_subject = lv_filename
          i_att_content_text   = gt_dat ).
      ENDIF.
      IF gt_txt[] IS NOT INITIAL.
        CONCATENATE [...]
               INTO lv_filename.
        lo_document->add_attachment(
          i_attachment_type    = 'RAW'
          i_attachment_subject = lv_filename
          i_att_content_text   = gt_txt ).
      ENDIF.
      IF gt_zip[] IS NOT INITIAL.
        CONCATENATE [...]
               INTO lv_filename.
        lo_document->add_attachment(
          i_attachment_type    = 'BIN'
          i_attachment_subject = lv_filename
          i_att_content_hex    = gt_zip ).
      ENDIF.
      lo_mail->set_document( lo_document ).
*   destinatari
      lo_recipient =
        cl_cam_address_bcs=>create_internet_address( gv_smtp_addr ).
      lo_mail->add_recipient( lo_recipient ).
*   notifiche
      lo_mail->set_status_attributes( 'E' ).
*   invio
      lv_sent_to_all = lo_mail->send( i_with_error_screen = 'X' ).
      COMMIT WORK.
      IF lv_sent_to_all IS INITIAL.
        MESSAGE I500(SBCOMS) WITH gv_smtp_addr.
      ELSE.
        MESSAGE S022(SO).
      ENDIF.
    CATCH cx_bcs INTO lo_exception.
      MESSAGE I865(SO) WITH lo_exception->error_type.
  ENDTRY.

ENDFORM.                    "send_as_attachment

Lunarchitects

lunedì 9 novembre 2015

Leggere un file di Excel via Citrix

*----------------------------------------------------------------------*
* DECLARATIONS                                                         *
*----------------------------------------------------------------------*
DATA: BEGIN OF tb_xls OCCURS 0,
        kdmat       LIKE VBAP-KDMAT,
        zhtccd      LIKE ZSD_TRU_HTC_MAT-ZHTCCD,
        ihrez_e     LIKE VBKD-IHREZ_E,
        taxm1(3)    TYPE C,
        kbmeng      LIKE VBAP-KBMENG,
        zzccn       LIKE ZSD_TRU_CCN-ZZCCN,
        zprgccn     LIKE VBAP-ZPRGCCN,
      END OF tb_xls.

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

*----------------------------------------------------------------------*
* FORM READ_XLS                                                        *
*----------------------------------------------------------------------*
FORM read_xls.

  TYPE-POOLS SOI.

  DATA: lo_container   TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
        li_control     TYPE REF TO I_OI_CONTAINER_CONTROL,
        li_document    TYPE REF TO I_OI_DOCUMENT_PROXY,
        li_spreadsheet TYPE REF TO I_OI_SPREADSHEET,
        li_error       TYPE REF TO I_OI_ERROR,
        lv_url         TYPE C LENGTH 256,
        lt_sheets      TYPE SOI_SHEETS_TABLE,
        ls_sheets      TYPE SOI_SHEETS,
        lt_ranges      TYPE SOI_RANGE_LIST,
        ls_rcode       TYPE SOI_RET_STRING,
        lt_data        TYPE SOI_GENERIC_TABLE,
        ls_data        TYPE SOI_GENERIC_ITEM.

  C_OI_CONTAINER_CONTROL_CREATOR=>GET_CONTAINER_CONTROL(
     IMPORTING
       CONTROL = li_control
       ERROR   = li_error ).
  IF li_error->has_failed = 'X'.
    li_error->raise_message( 'E' ).
  ENDIF.

  CREATE OBJECT lo_container
    EXPORTING
      CONTAINER_NAME              = 'CONT'
    EXCEPTIONS
      CNTL_ERROR                  = 1
      CNTL_SYSTEM_ERROR           = 2
      CREATE_ERROR                = 3
      LIFETIME_ERROR              = 4
      LIFETIME_DYNPRO_DYNPRO_LINK = 5
      OTHERS                      = 6.
  IF SY-SUBRC <> 0.
    MESSAGE E000(YA1) WITH TEXT-E17.
  ENDIF.

  li_control->init_control(
    EXPORTING
       INPLACE_ENABLED      = 'X'
       R3_APPLICATION_NAME  = 'EXCEL CONTAINER'
       PARENT               = lo_container
    IMPORTING
       ERROR                = li_error
    EXCEPTIONS
       JAVABEANNOTSUPPORTED = 1
       OTHERS               = 2 ).
  IF li_error->has_failed = 'X'.
    li_error->raise_message( 'E' ).
  ENDIF.

  li_control->get_document_proxy(
    EXPORTING
      DOCUMENT_TYPE  = SOI_DOCTYPE_EXCEL_SHEET
    IMPORTING
      DOCUMENT_PROXY = li_document
      ERROR          = li_error ).
  IF li_error->has_failed = 'X'.
    li_error->raise_message( 'E' ).
  ENDIF.

  CONCATENATE 'FILE://' pa_local INTO lv_url.

  li_document->open_document(
    EXPORTING
      DOCUMENT_TITLE = 'Excel'
      DOCUMENT_URL   = lv_url
      OPEN_INPLACE   = 'X'
      OPEN_READONLY  = 'X'
    IMPORTING
      ERROR          = li_error
      RETCODE        = ls_rcode ).
  IF li_error->has_failed = 'X'.
    li_error->raise_message( 'I' ).
    MESSAGE E000(YA1) WITH ls_rcode.
    LEAVE LIST-PROCESSING.
  ENDIF.

  li_document->get_spreadsheet_interface(
    EXPORTING
      NO_FLUSH        = ' '
    IMPORTING
      ERROR           = li_error
      SHEET_INTERFACE = li_spreadsheet ).
  IF li_error->has_failed = 'X'.
    li_error->raise_message( 'I' ).
    LEAVE LIST-PROCESSING.
  ENDIF.

  li_spreadsheet->get_sheets(
    EXPORTING
      NO_FLUSH = ' '
    IMPORTING
      SHEETS   = lt_sheets
      ERROR    = li_error ).
  IF li_error->has_failed = 'X'.
    li_error->raise_message( 'I' ).
    LEAVE LIST-PROCESSING.
  ENDIF.

  LOOP AT lt_sheets INTO ls_sheets.
    li_spreadsheet->select_sheet(
      EXPORTING
        NAME  = ls_sheets-sheet_name
      IMPORTING
        ERROR = li_error ).
    IF li_error->has_failed = 'X'.
      EXIT.
    ENDIF.

    li_spreadsheet->set_selection(
      top     = 4 "salto le prime 3 righe
      left    = 1
      rows    = 9999
      columns = 7 ).

    li_spreadsheet->insert_range(
      EXPORTING
        NAME     = 'CCN'
        ROWS     = 9999
        COLUMNS  = 7
        NO_FLUSH = ' '
      IMPORTING
        ERROR    = li_error ).
    IF li_error->has_failed = 'X'.
      EXIT.
    ENDIF.

    li_spreadsheet->get_ranges_names(
      IMPORTING
        ranges  = lt_ranges
        retcode = ls_rcode ).

    DELETE lt_ranges WHERE NAME <> 'CCN'.

    CLEAR lt_data[].

    li_spreadsheet->get_ranges_data(
      EXPORTING
        ALL      = ' '
      IMPORTING
        CONTENTS = lt_data
        ERROR    = li_error
        RETCODE  = ls_rcode
      CHANGING
        RANGES   = lt_ranges ).
    DELETE lt_data WHERE value IS INITIAL
                      OR value = SPACE.

*leggo il primo foglio e poi esco
    EXIT.

  ENDLOOP.

  IF li_error->has_succeeded = 'X'.

    LOOP AT lt_data INTO ls_data.
      CASE ls_data-column.
        WHEN 1.
          CONDENSE ls_data-value.
          tb_xls-kdmat = ls_data-value.
        WHEN 2.
          tb_xls-zhtccd = ls_data-value.
        WHEN 3.
          tb_xls-ihrez_e = ls_data-value.
        WHEN 4.
          IF ls_data-value CP '*18*'.
            tb_xls-taxm1 = '18%'.
          ELSE.
            tb_xls-taxm1 = '10%'.
          ENDIF.
        WHEN 5.
          tb_xls-kbmeng = ls_data-value.
        WHEN 6.
          CONDENSE ls_data-value NO-GAPS.
          tb_xls-zzccn = ls_data-value.
        WHEN 7.
          tb_xls-zprgccn = ls_data-value.
      ENDCASE.
      AT END OF row.
        APPEND tb_xls.
        CLEAR tb_xls.
      ENDAT.
    ENDLOOP.

  ELSE.
    MESSAGE I000(YA1) WITH TEXT-E16 pa_local.
  ENDIF.

  li_document->close_document(
    IMPORTING
      ERROR = li_error ).
  IF li_error->has_failed = 'X'.
    li_error->raise_message( 'I' ).
    LEAVE LIST-PROCESSING.
  ENDIF.

  li_document->release_document(
    IMPORTING
      ERROR = li_error ).
  IF li_error->has_failed = 'X'.
    li_error->raise_message( 'I' ).
    LEAVE LIST-PROCESSING.
  ENDIF.

ENDFORM.                    "read_xls

martedì 3 novembre 2015

Tavarua

Antologia di Spoon River, Edgar Lee Masters

Antologia di Spoon River
Di Edgar Lee Masters
Editore: Rizzoli (Bur L, 581)


Lingua: Italiano | Numero di pagine: 561 | Isbn-13: 9788817165815 | Data di pubblicazione: 01/01/1986 | Traduttore: Alberto Rossatti | Prefazione: Viola Papetti | Genere: Biografia - Narrativa & Letteratura - Filosofia