Visualizzazione post con etichetta SAP. Mostra tutti i post
Visualizzazione post con etichetta SAP. Mostra tutti i post

martedì 11 agosto 2020

Ricalcolo/ristampa Libro Giornale.

Per la stampa ufficiale del registro Libro Giornale SAP mette a disposizione la transazione S_ALR_87012287 (report RFBELJ10_NACC).

Questo programma, lanciato mese per mese, salva in una tabella di appoggio i totali progressivi:

  • Esercizio
  • Data di registrazione nel documento
  • Importo dare accumulato in divisa interna
  • Importo avere accumulato in divisa interna
  • Contatore
  • Giorno acquisizione documento contabile
  • Contatore (numero di pagina)

La tabella è la TRVOR oppure la FAGL_TRVOR in caso di conti General Ledger.

giovedì 30 aprile 2020

SAP: Trovare la % di una condizione IVA.

In SAP la gestione dei codici IVA viene effettuata tramite la transazione FTXP, ma il valore della % IVA viene salvato all'interno di condizioni prezzo e non è proprio semplice da recuperare.

Si può cercare il valore nella tabella delle condizioni KONP con campo Applicazione (KAPPL) = TX, ma è piuttosto complicato.

Ci viene in aiuto il FM GET_TAX_PERCENTAGE che, dato il paese, la data e il codice IVA restituisce una tabella con il valore %.

domenica 29 marzo 2020

SAP EHP8: Velocizzare lettura movimenti magazzino per materiale-data.

Le informazioni relative ai movimenti di magazzino sono contenute in 2 tabelle principali:

MKPF Testata doc. materiale
MSEG Segmento doc. materiale

Prima dell'ultimo aggiornamento a EHP8 c'era questo problema:

La data di registrazione del movimento era contenuta nella tabella di testata, il codice materiale e tutti i dettagli nella tabella "segmento".

Molto spesso però si devono lanciare report o query che interrogano il DB per materiale-data.

martedì 25 febbraio 2020

Autorizzazioni SAP in EHP8: piccolo problemino.

Nel sistema gestionale SAP è previsto un complesso e "sofisticato" metodo di autorizzazione alle funzioni eseguite dagli utenti, attraverso i ruoli e un vasto elenco di oggetti autorizzativi:

  • dal più banale che è il codice della transazione (s_tcode), 
  • a oggetti legati alla organizzazione (divisione o plant, organizzazione commerciale, acquisti, etc), 
  • a tipi di oggetto (tipo d'ordine, codice movimento, tipo di documento, etc)
  • via via fino ad arrivare ad oggetti autorizzativi custom Z.

Dalla EHP8 si presenta quella che ritengo una piccola anomalia.

sabato 25 gennaio 2020

Gestione Layout di default in liste ALV - Workaround.

Nelle liste di tipo ALV (acronimo di Abap List Viewer...ma viene bene anche come Advance List Viewer) l'utente può, in taluni casi (e vediamo sotto come possono essere pilotati), scegliere il layout da usare come default.

Questa impostazione però non vale per il solo suo utente, ma definisce il default valido per TUTTI gli utenti che lanciano il report. Non ho trovato il modo di definire un layout di visualizzazione in modo che sia default per alcuni utenti, mentre per altri no.

Questo è un workaround a cui ho pensato per poter bypassare il problema.

martedì 14 gennaio 2020

Blocco assegnazione numerazione per nuovo anno.

Con il nuovo anno si è presentato uno strano problema con l'assegnazione della numerazione per oggetti interni di tipo "office".

Alla prima mail che si è tentato di spedire da SAP, il sistema sembrava fermo all'assegnazione di un numero per oggetto SO_OBJ_RAW, con il risultato che diversi altri numeratori sembravano bloccati.

Io ero arrivato verso le 8 del mattino e c'era già un task in attesa del rilascio di un numero da oltre 15.000 secondi (in Cina sono 7 ore avanti come fuso orario!).

Nel sistema di produzione, per fortuna, la faccenda si è risolta con un arresto del sistema ed un riavvio mentre, pochi giorni dopo, il problema è capitato nel sistema di sviluppo e non sono bastati diversi reboot completi del sistema per risolvere.

mercoledì 18 dicembre 2019

SAP: Auto logoff dopo inattività.

Tra i parametri di sistema si può impostare il tempo limite oltre il quale, gli utenti inattivi, vengono automaticamente disconnessi dal sistema.

Il parametro è questo: rdisp/gui_auto_logout

qui le indicazioni.

Questo però vale per tutti gli utenti del sistema, mentre non è possibile impostare dei tempi di inattività differenti per i vari utenti.

Di seguito come impostare un tempo personalizzato a livello di utente.

domenica 15 dicembre 2019

Transazione MB03 Obsoleta.

Sembra che la transazione MB03, visualizzazione documento materiale, stia per essere sostituita dalla MIGO con operazione "A04-Visualizzare".

Infatti se si lancia la transazione MB03 (su un sistema non produttivo), si riceve il messaggio:

domenica 22 settembre 2019

Svuotamento Kanban SAP da Excel.

Per lo svuotamento, o comunque il cambio stato, di un contenitore Kanban di SAP ci sono varie transazioni standard.

Ho pensato che sarebbe stato comodo anche un semplice foglio Excel dove l'operatore inserisce il numero cartellino (ID kanban), letto magari con un barcode-reader, poi un tasto per procedere allo svuotamento, con gestione dei messaggi ed eventuali errori di ritorno.

In questo post la spiegazione di come realizzarlo.

mercoledì 21 agosto 2019

Kanban - FM check cambio stato effettuabile.

Nel kanban di SAP si può impostare un tempo minimo di attesa che deve esserci tra un cambio stato e l'altro di un cartellino.

Questo dovrebbe evitare, per esempio, errori di doppia lettura a breve distanza di tempo con le transazioni che impostano lo stato successivo del cartellino.

Ho cercato un Function Module che, dato l'ID di un cartellino kanban, verificasse se può essere effettuato il cambio stato oppure se si deve attendere che passi il tempo previsto.

Non l'ho trovato per cui ne ho costruito uno io.

venerdì 9 agosto 2019

Gestione tempi di carico nei trasporti.

Si vuole aggiornare in modo semplice la data-ora di inizio e di fine carico nella gestione trasporti di SAP.

L'idea è quella di costruire una nuova transazione molto semplice, da utilizzare nei terminali in radio frequenza, in modo che l'operatore possa registrare facilmente l'inizio dell'operazione di carico del camion e la fine dell'operazione; in questo modo si può avere evidenza del tempo effettivo di carico nei trasporti.

Esiste una BAPI di aggiornamento dei trasporti BAPI_SHIPMENT_CHANGE, non è molto ben documentata e si trovano pochi esempi on-line, per cui sono stati necessari diversi tentativi e test, ma alla fine ho trovato il modo di usarla.

mercoledì 31 luglio 2019

Dopo EHP8 non funziona il rilascio OdA legato al nome utente.

La procedura di rilascio degli Ordini di Acquisto può essere legata allo username dell'utente che ha creato l'ordine, in modo da attivare la richiesta di approvazione solo per determinati utenti mentre per altri no.

Per rendere funzionante questa procedura è necessario attivare una EXIT dove viene aggiornato il campo in questione.

Si tratta della Exit EXIT_SAPLEBND_002 (include ZXM06U22).

Prima dell'aggiornamento a EHP8 tutto funzionava correttamente, dopo l'aggiornamento per nessun ordine scattava il rilascio anche se il nome utente lo prevedeva.

venerdì 21 giugno 2019

FM TRM_POPUP_TEXT_INPUT non esiste più in EHP8.

TRM_POPUP_TEXT_INPUT è una funzione che consente all'utente di inserire un testo libero, con la possibilità di rilevare un testo iniziale inviato come proposta.

L'avevo usata in un report che mostra la lista degli oggetti bloccati e consente di inviare un messaggio all'utente, purtroppo questo FM non esiste più nella versione EHP8.

Dopo l'upgrade a EHP8, infatti, non esiste più il gruppo funzioni STQE che conteneva appunto questo FM.

Ho cercato qualche funzione alternativa, ma nessuna consente di riprendere in modo semplice un testo proposto, per cui ho pensato di costruire un FM Z per copia dall'originale.

venerdì 14 giugno 2019

SMARTFORMS problema con caratteri cinesi.

Si presenta uno strano problema su uno SMARTFORMS con una stringa molto lunga che inizia con caratteri cinesi.

Si deve riportare in stampa un lungo elenco di matricole (numero identificativo degli imballi) separate da spazi, il tutto contenuto in una unica stringa.

Da notare che, come riportato nella nota 485296, Smartforms ha alcune limitazioni:

In Smart Forms, the output length for string fields is restricted to a maximum of 255 characters.

sabato 25 maggio 2019

Test passaggio valori Excel-RFC.

In questo post ho mostrato che, nel trasferimento di numeri in chiamate RFC remote, alcuni campi numerici e per valori molto alti risultavano vuoti.

Per capire meglio il comportamento delle chiamate, con differenti tipi di variabili numeriche, ho costruito un FM che accetta in ingresso un numero e poi lo riporta in output su campi diversi che utilizzano vari tipi di definizione.

Ho preparato quindi un foglio Excel che si collega a SAP, passa il numero, poi lo riprende e lo espone usando i differenti parametri.

giovedì 25 aprile 2019

Lettura Ordine di Produzione da Excel (con problemi!).

La BAPI_PRODORD_GET_DETAIL è un Function Module usato per leggere dati dagli Ordini di Produzione.

Ho pensato di usare questa funzione da un foglio Excel per appunto, da un ordine di produzione, trovare i suoi dati di testata, le operazioni di lavoro e i componenti usati.

mercoledì 24 aprile 2019

Parameter ID e CALL TRANSACTION.

In questo post avevo sollevato qualche perplessità su un comportamento che mi sembrava strano, rispetto ad una chiamata CALL TRANSACTION usando il Parameter ID di un campo nello screen iniziale.

Mi hanno spiegato che non è sufficiente possedere il Parameter ID per poter effettuare correttamente la chiamata CALL TRANSACTION, ma bisogna che il campo abbia anche l'attributo speciale SET.

domenica 7 aprile 2019

Strano problema CALL TRANSACTION a VL33N.

Dopo l'aggiornamento del sistema alla EHP8 ho riscontrato una stranezza utilizzando la CALL TRANSACTION sulla VL33N.

La VL33N è una transazione standard per la visualizzazione del documento di fornitura, presenta in ingresso il solo campo del numero documento di fornitura:

mercoledì 3 aprile 2019

Dump "SINGLE_EXIT_MULTIPLY_ACTIVE".

Dopo l'aggiornamento del sistema a EHP8 diverse transazioni standard della contabilità fornitori (MIRO, FB60, F-03), subito all'avvio, terminavano con un Dump indicando l'errore:

Exception condition "SINGLE_EXIT_MULTIPLY_ACTIVE" triggered

Il problema nasce dal fatto che due BADI hanno delle condizione di attivazione sovrapposte, per cui il sistema non sa quale deve lanciare e termina con l'errore indicato.

Di seguito come ho risolto.

giovedì 21 marzo 2019

Scarico magazzino SAP da file Excel 2

In questo post del 2016 avevo descritto come si poteva realizzare uno scarico da magazzino SAP tramite un foglio Excel con macro VBA.

Adesso dopo aver:

- cambiato PC.
- aggiornato la versione Excel alla 2016.
- aggiornato il SO del server SAP a Windows server 2016.
- aggiornato il kernel SAP.
- aggiornato la release SAP alla EHP8.

mi sono accorto che il foglio non funzionava più!