ABAP Training
Sapscript
O que é SAPscript e quando utilizar 1
ABAP Training SAPsc SAPscri ript pt é a ferr ferrame amenta nta do SAP para para cria criaçã ção o de relat relatóri órios os mais mais elaborados, chamados de formulários A opção pela utili!ação da ferramenta geralmente se dá pela necessidade de alguns recursos "ue não podem ser obtidos atra#és de código de ABAP comum, como nos chamados $reports%, tais como inserção de logotipos, fontes de tamanhos ou tipos diferentes, etc &uitas #e!es, também, dependendo da necessidade necessidade do relatório, relatório, pode compensar mais utili!ar o desen#ol#imento de um relatório con#encional sobre um formulário pré impresso, "ue 'á contenha o la(out e logotipo dese'ados
)
ABAP Training SAPsc SAPscri ript pt é a ferr ferrame amenta nta do SAP para para cria criaçã ção o de relat relatóri órios os mais mais elaborados, chamados de formulários A opção pela utili!ação da ferramenta geralmente se dá pela necessidade de alguns recursos "ue não podem ser obtidos atra#és de código de ABAP comum, como nos chamados $reports%, tais como inserção de logotipos, fontes de tamanhos ou tipos diferentes, etc &uitas #e!es, também, dependendo da necessidade necessidade do relatório, relatório, pode compensar mais utili!ar o desen#ol#imento de um relatório con#encional sobre um formulário pré impresso, "ue 'á contenha o la(out e logotipo dese'ados
)
ABAP Training Limitações e problemas da ferramenta *mbora se'a a ferramenta de geração de formulários mais poderosa do SAP, o SAPscript ainda apresenta uma série de limitaç+es, principalmente no "ue di! respeito a #ericação de erros e análise de debug -m comando escrito na graa errada dentro de um formulário, 'amais será detectado pelo mesmo Somente a não funcionalidade esperada do comando poderá le#ar ao programador descobrir seu próprio erro . modo modo debu debug g do ambi ambien ente te de SAP SAPscrip criptt pode pode ser ser ati# ati#ad ado o na transação S*/1 0SAP Standard &enu 2 Tools 2 Sapscript 2 3orm4, atra#és do menu menu -til -tilit itári ários os 2 Ati# Ati#ar ar debug debug . métod método o corr correto eto cons consis iste te em se preencher o nome do formulário e idioma nos campos da tela, antes de percorrer o caminho do menu Algumas #e!es, no entanto, principalmente para para um proc proces essam sament ento o em bac5g bac5gro roun und, d, o formul formulári ário o não não permi permite te ser ser debu debuga gado do,, embo embora ra per percor correndo endo o camin aminho ho aci acima citado tado,, nenh nenhum uma a mensag mensagem em de impos impossi sibi bili lidad dade e se'a se'a e6ib e6ibid ida a Simpl Simplesm esment ente, e, nenhu nenhuma ma tentati#a de debug funciona 7esses casos, o programador de#e utili!ar de artif artif8c 8cio ioss como como impr imprim imir ir o cont conte9d e9do o dos dos camp campos os a sere serem m chec checado adoss em pontos estratégicos do formulário, para obser#ar seu comportamento . comp comport ortame amento nto de um formul formulári ário o SAPsc SAPscri ript pt pode pode també também m ser muitas muitas #e!es #e!es irrita irritante, nte, princip principalme almente nte "uando "uando se desconh desconhece ece alguns alguns de seus detalhes -m dos problemas mais comuns do formulário SAPscript é "uanto a utili!ação de logotipos nos relatórios gerados Sua losoa pode parecer bastante simples e é, mas essa operação é bastante sens8#el, e de#em ser salientados alguns pontos: 1 . ob'et ob'eto o com com o logo logoti tipo po de#e de#e ser ser gerado gerado a parti partirr de um prog program rama a de ABAP, atra#és da transação S*;<, chamado RSTXLD! . modo como o ar"ui#o com o logotipo é tratado, de#e ser cuidadosamente #ericado, pois implicará no sucesso ou fracasso da e6ibição do logotipo esperado =nicialmente, de#e ser ressaltado "ue o ar"ui#o de#e estar no formato T=33 0e6tensão T=34, não comprimido *ssa gura gerada nestes padr+es tem ainda algumas restriç+es para a sua aplicação *m primeiro lugar, o n9mero de p86eis da gura 0 a resolução da mesma, em >P= ? dots per inch 4 de#em ser e6atamente o n9mero de p86eis informado na tela de seleção do programa para se garantir "ue o logotipo se'a e6ibido no tamanho em "ue foi gerado Alguns programas de editoração gráca, como o Paint Shop Pro, possuem recursos para se determinar o tamanho da gura em cent8metros e até mudálo 0resi!e4, mantendose a resolução 0n9mero de p86els4 *m alguns casos, se o n9mero de p86eis não coincidir com o informado, a gura pode nem ser gerada no SAP, dicultando o trabal trabalho ho do progr programa amador dor *m segund segundo o lugar lugar,, o n9mer n9mero o de core coress ou tonalidades de cin!a também precisam coincidir 0esse par@mentro #aria ;
ABAP Training de acordo com a #ersão do SAP, de#endose estar atento aos dados na tela de seleção do programa4 Por m, um 9ltimo par@metro "ue pode alterar o tamanho e o formato do logotipo é a conguração conguração da impressora impressora no SAP . SAP utili!a a conguração da impressora para gerar o formulário e imprim8lo Se a conguração não esti#er correta, pode inuenciar no logotipo e na criação de linhas e cai6as 0B.*S4 ) 7essa hora entra a segunda diculdade diculdade de se trabalhar com logotipos em SAPscript Ao se e6ecutar o formulário, em uma #isuali!ação na tela, o usuá usuári rio o nunc nunca a irá irá cons conseg egui uirr en6 en6erga ergarr o logo logoti tipo po *sse *sse some soment nte e irá irá apare aparece cerr na impr impress essão ão em papel papel 0ain 0ainda da "ue impr impres essão são do la(ou la(outt do formulário, e não seu conte9do nal -tilitários 2 =mprimir la(out4 As no#as #ers+es do SAP 'á corrigiram esse problema *ssas sas duas uas cara aracter8 er8sticas podem dem tomar algumas umas hor horas do programador, ainda "ue bem e6periente no trabalho com SAPscript C impor importan tante te se obser obser#ar #ar também também "ue "ue os formul formulári ários os são $cli $client ent dependent%, o "ue signica di!er "ue de#em ser transportados a todos os clie cliente ntess em "ue "ue se dese' dese'a a e6ec e6ecut utál álo, o, indep independ endent enteme emente nte de estar estar na mesma inst@ncia "ue 'á o tenha =sso não pareceria ser muito complicado se não fosse um trabalho a mais controlar a #ersão de todos no momento "ue uma alteração for feita Por isso, recomendase "ue todos os n9meros das Dhange Ee"uests se'am inseridos como comentário no corpo do formulário, pois não há administração de #ers+es para Sapscript, como há nos reports -m outro problema problema são os ob'etos gerados, como os logotipos logotipos e te6tos, te6tos, "ue além de dependentes do cliente, não estão #inculados a nenhuma re"uest, não podendo nem ser transportados diretamente de um cliente para o outro outro Tanto os logotipo logotiposs "uanto "uanto os te6tos te6tos são arma!en arma!enados ados da mesma mesma maneir maneira a no sist sistema ema Para ara trans transpo portá rtálo los, s, de#es de#ese e e6ec e6ecuta utarr o prog program rama a "ue asso associ cia a esse essess te6t te6tos os a uma uma chang hange e re"ue e"uest st para para em RSTXTRA" , "ue seguida, poderem ser transportados Por falar em transporte, é sempre bom reforçar "ue no momento do transporte transporte de um formulário formulário SAPscript, SAPscript, é necessário necessário assegurar "ue todas as estruturas utili!adas por ele, tenham sido transportadas anteriormente . ob'eti#o ob'eti#o é assegurar "ue tudo "ue será utili!ado pelo formulário formulário 'á este'a no cliente, no momento em "ue este for introdu!ido, para "ue não ha'a erros A ordem mais aconselhada para esses transportes seria: 1 *strutura ) Fa(out ; Programa de po#oamento Também Também #ale a pena chamar a atenção para "ue esses ; classes de ob'etos este'am em re"uests separadas no desen#ol#imento de um pro'eto,
G
ABAP Training o "ue pode e#itar problemas "uando algum deles não esti#er funcionando propriamente e necessitar ser reparado
H
ABAP Training Pro#rama de Po$oamento do SAPS!R%PT . programa de po#oamento é o programa responsá#el pelo controle da impressão do formulário C atra#és dele "ue o formulário é aberto, "ue os dados são en#iados para as 'anelas corretas, "ue é feito o controle de "uebra de páginas, "ue é feito o fechamento do formulário, etc C no programa de po#oamento "ue é feita a seleção dos dados "ue de#erão aparecer no relatório Toda a lógica de seleção, busca dos dados, associação de tabelas, etc, é feita nele . formulário é apenas um $dispositi#o% para output dos dados A construção de um programa de po#oamento de#e seguir a seguinte estrutura: -
Abertura de um formulário =niciali!ação de um formulário Seleção dos dados do formulário =mpressão dos dados nas 'anelas do formulário *ncerramento do formulário 3echamento do formulário
I
ABAP Training •
Abertura de formul&rios'
. primeiro passo para a impressão de um Sapscript atra#és de um programa é a abertura de um formulário para "ue se possa fa!er o po#oamento Para "ue se possa iniciali!ar um formulário é necessário "ue este se'a aberto Portanto, é obrigatória a presença de um comando de abertura num programa de po#oamento A abertura de um formulário gera automaticamente a iniciali!ação de um formulário . comando para a abertura de um formulário é a seguinte função: call function 'OPEN_FORM' exporting * APPLICATION * ARC!I"E_IN#E * ARC!I"E_PARAM$ DEVICE
* * * * * *
= 'T' = ' ' = ' ' = 'PRINTER'
#IALO%
= ''
FORM LANGUAGE
= (Nome do Formulário) = (Idioma do Formulário)
OPTION$ i&porting language ne_arc(i)e_para& reult exception cancele+ +e)ice for& option uncloe+ ot(er
= ITCPO = = = = = = = = =
, . / 0 12
.s par@metros mais importantes a serem passados para a função são: De$ice ? >ispositi#o onde será gerado o formulário 0geralmente PE=7T*E4 (orm ? 7ome do formulário a ser aberto Lan#ua#e ? =dioma a ser utili!ado >ois outros par@metros também muitas #e!es utili!ados são o dialo# e o options 7o primeiro, indicase se a cai6a de diálogo para conguração da impressão de#e ou não ser apresentado Daso este de#a ser omitido, os dados para impressão serão tomados de uma estrutura a ser colocada no segundo par@metro 7essa estrutura são passados os dados tais como n9mero de cópias e nome da impressora A opção de não e6ibição da cai6a de diálogo esta diretamente ligada a utili!ação do segundo par@metro Se a
/
ABAP Training e6ibição esti#er desabilitada 0>=AF.J K L L4 mas a estrutura =TDP. não esti#er preenchida, a cai6a de diálogo será e6ibida Alguns dos campos mais importantes e "ue normalmente são utili!ados na estrutura =TDP. são: -
TD!OP%)S 079mero de Dópias4 TDD)ST 0>ispositi#o de Sa8da4 TDPR)*%)+ 0Print Pre#ieM4 TD%)D 0Sa8da =mediata4 *6emplo de abertura do formulário NSDEOD-ES.
ITCPO3T#IMME# = 452 ITCPO3T#COPIE$ = -2 ITCPO3T##E$T = 4IMP,52 call function 'OPEN_FORM' exporting * APPLICATION * ARC!I"E_IN#E * ARC!I"E_PARAM$ DEVICE DIALOG FORM LANGUAGE OPTIONS
* * * *
= 'T' = ' ' = ' ' = = = = =
'PRINTER' ' ' 'ZSCR_CURSO' 'P' ITCPO
i&porting language = ne_arc(i)e_para& = reult = exceptions cnce!e" "e$ice &o( options +nc!ose" ot-es
= = = = = =
# % ) * , ./
7este e6emplo, o formulário NSDEOD-ES. no idioma portugus será aberto, sem a e6ibição da cai6a de diálogo de impressão, utili!ando a impressora =&P1 e e6ecutando a impressão imediata de ) cópias
<
ABAP Training •
%nicializaç,o de um formul&rio'
A abertura de um formulário automaticamente gera a iniciali!ação do mesmo &as, imagine por e6emplo "ue este'amos gerando relatórios para uma empresa de computadores onde, para cada no#o computador #endido, de#e ser gerado um no#o relatório, e esse relatório de#e conter todos os componentes presentes no computador em "uestão A abertura de um formulário inicia o primeiro, mas para cada no#o computador #endido um no#o formulário de#e ser gerado Para isso utili!amos o comando de iniciali!ação *ste comando permite "ue, numa mesma impressão, se'am gerados #ários formulários diferentes, como se esti#éssemos abrindo um no#o para cada computador #endido *ste comando não é obrigatório e pode não ser utili!ado caso não ha'a necessidade da "uebra e criação de #ários formulários para uma só seleção de dados . comando para iniciali!ação de um formulário é a seguinte função: call function '$TART_FORM' exporting * ARC!I"E_IN#E = ' ' FORM = ' ' LAN%6A%E = ' ' * $TARTPA%E = ' ' * PRO%RAM = ' ' * i&porting * language = exception for& = , for&at = unen+e+ = . unopene+ = / unue+ = 0 ot(er = 12
A função é muito similar Q função .P*7O3.E&, e no#amente os par@metros mais importantes são o nome 03.E&4 e o idioma 0FA7J-AJ*4 do formulário Para "ue se possa utili!ar um comando STAETO3.E& é obrigatório "ue um comando de .P*7O3.E& tenha sido e6ecutado
R
ABAP Training •
(inalizando um formul&rio'
*m contrapartida com o item acima 0comando STAETO3.E&4, toda #e! "ue um formulário é iniciali!ado, o mesmo de#e ser nali!ado ao nal do seu processamento =sso é obtido atra#és do comando : CALL F6NCTION 'EN#_FORM'2 * IMPORTIN% * RE$6LT * ECEPTION$ * 6NOPENE# * 7A#_PA%EFORMAT_FOR_PRINT * OT!ER$
= = , = = .
Para o seu funcionamento, apenas a sua chamada é suciente, sem as cláusulas adicionais, comentadas acima •
(ec-ando um formul&rio' 3inalmente, em contrapartida ao comando .P*7O3.E&, toda #e! "ue um formulário é aberto, o mesmo de#e ser fechado =sso é obtido atra#és do comando :
CALL * * * * * * * * * *
F6NCTION 'CLO$E_FORM'2 IMPORTIN% RE$6LT R#I_RE$6LT TA7LE$ OTF#ATA ECEPTION$ 6NOPENE# 7A#_PA%EFORMAT_FOR_PRINT $EN#_ERROR OT!ER$
= = = = = = =
, . /
Domo no comando *7>O3.E&, para o seu funcionamento, apenas a sua chamada é suciente, sem as cláusulas adicionais, comentadas acima
1
ABAP Training Seleç,o dos dados A seleção dos dados é feita normalmente com comandos S*F*DT e demais comandos ABAP, como 'á foi #isto em tópicos anteriores -m ponto importante "ue de#e ser obser#ado é "ue não é poss8#el utili!ar tabelas internas e #ariá#eis do programa para a impressão dos dados no SAPSDE=PT Portanto, se algum dado "ue de#a ser impresso esti#er numa tabela interna ou #ariá#el, este de#e ser copiado para uma estrutura para "ue possa ser en#iado ao SAPSDE=PT
11
ABAP Training •
%mpress,o dos dados nas .anelas
A impressão dos dados nas 'anelas na maioria das #e!es é feita simultaneamente com a seleção dos dados, ou se'a, a medida "ue os dados são selecionados, são en#iados imediatamente para o formulário . comando para impressão dos dados é a seguinte função: call function '8RITE_FORM' exporting ELEMENT = ' ' * F6NCTION = '$ET' * T9PE = '7O#9' 8IN#O8 = 'MAIN' * i&porting * pen+ing_line = exception ele&ent = , function = t:pe = . unopene+ = / untarte+ = 0 in+o = 1 ot(er = ;2
>ois par@metros são os mais importantes: )lement / >etermina "ual >ata *lement será utili!ado dentro do Sapscript +indo0 / anela na "ual os dados de#em ser impressos 7este ponto ca e#idente a diferenciação entre os tipos de 'anela &A=7 e demais 'anelas Para as 'anelas do tipo &A=7, cada comando de escrita 0MriteOform4 signica uma no#a linha no formulário e o #alor a ser impresso é o #alor "ue o campo arma!ena no momento do comando de impressão Por e6emplo, digamos "ue o campo &AEA&AT7E tenha o #alor L1);GU e "ue um comando de impressão se'a dado para a 'anela &A=7 "ue irá imprimir este campo Fogo em seguida uma no#a seleção da tabela &AEA é feita e o campo &AT7E agora #ale LHI/
1)
ABAP Training no e6emplo anterior fosse utili!ada uma 'anela nãomain, o resultado nal seria somente 5678' 7a realidade, a utili!ação de um comando VE=T*O3.E& numa 'anela nãomain é utili!ada para a escolha de "ual elemento de te6to será utili!ado para a impressão dos dados *6emplo: -ma 'anela W*A>*E nãomain contém dois elementos de te6to chamados 3EAS*1 e 3EAS*) da seguinte forma:
FRA$E, MARA3MATNR FRA$EMARA3MATNR
Tete +e Frae , Tete +e Frae -
Se um comando VE=T*O3.E& for e6ecutado para a 'anela W*A>*E utili!ando o elemento de te6to 3EAS*1, call function '8RITE_FORM' exporting ELEMENT = 'FRA$E,' * F6NCTION = '$ET' * T9PE = '7O#9' 8IN#O8
= '!EA#ER'
estará sendo indicado ao programa "ue, ao se encerrar o formulário, de#e ser impresso o elemento de te6to 3EAS*1 para a 'anela W*A>*E 0somente um elemento de te6to é utili!ado para cada 'anela nãomain4 7o caso do e6emplo, se o campo &AT7E for igual a L1);GU no encerramento do formulário, seria impressa a seguinte frase: 1234 Teste de (rase 1 . elemento de te6to a ser impresso será sempre o 9ltimo a ser selecionado antes do nal ou da "uebra de página Se nenhum for selecionado, ao encerrar o formulário ou mudar de página serão impressos os dados "ue não pertençam a nenhum elemento de te6to Portanto no caso de um campo "ue de#a ser impresso sempre em todas as páginas, como numero de página por e6emplo, basta colocálo fora de "ual"uer elemento de te6to e não selecionar nenhum elemento de te6to para a 'anela "ue, automaticamente, este dado será impresso em todas as páginas
1;
ABAP Training (lu9o do SAPS!R%PT: Tendo #isto os comandos acima, um u6o simplicado de um programa para a impressão de um SAPSDE=PT seria: FORM f_i&pri&e_apcript2 * A>re o for&ul?rio CALL F6NCTION 'OPEN_FORM' EPORTIN% #E"ICE FORM LAN%6A%E
= 'PRINTER' = '@_$AP$CRIT' = $93LAN%62
* inicialia o for&ul?rio
CALL F6NCTION '$TART_FORM' EPORTIN% FORM = '@_$AP$CRIT' LAN%6A%E = $93LAN%62 loop at i_ta>2
* i&pri&e o ele&ento +e +a+o ITEM +a Banela MAIN +o $apcript * co& o +a+o +a ta>ela interna i_ta> CALL F6NCTION '8RITE_FORM' EPORTIN% ELEMENT 8IN#O8 en+loop2
= 'ITEM' = 'MAIN'2
* finalia o for&ul?rio call function 'EN#_FORM'2 * fec(a o for&ul?rio call function 'CLO$E_FORM'2 EN#FORM2
1G
ABAP Training O formul&rio Trabalhar com um formulário SAPscript não é complicado, desde "ue se entenda seus componentes da maneira correta -m la(out é composto por #ários componentes, dentre os "uais podemos citar: 1 Weader informaç+es gerais do formulário, como formato e orientação da página em será utili!ado, parágrafo e fontes default do mesmo 0"uando não for especicado nenhuma dentro do form4 7esse tópico aparece também o t8tulo do formulário, a classe de desen#ol#imento do mesmo e os idiomas do formulário original e o corrente
1H
ABAP Training ) Parágrafos são elementos "ue podem ser criados pelo usuário e apresentam informaç+es dos te6tos de uma determinada 'anela 7esses parágrafos são determinados tipos de fontes, tabulaç+es, negrito ou sublinhado, etc
Para criar um parágrafo no#o, utili!ar o caminho do menu Processar ;< !reate )lement, lembrando "ue em um formulário standard, somente se pode alterar o la(out no idioma original
1I
ABAP Training
1/
ABAP Training ; Daracter String são informaç+es semelhantes Qs do parágrafo, no "ue di! respeito a formatação de te6tos, no entanto podem ser aplicados a trechos de te6tos e não necessariamente a linhas inteiras do formulário
Sua sinta6e de utili!ação se assemelha a programação WT&F, conforme e6emplo a seguir =magine um Daracter string denido com o nome B, cu'a formatação de te6to se'a o incremento do modelo negrito a uma determinada fonte Sua utili!ação seria: XB2Te6toXY2 * seu resultado no formulário seria:
Te9to
1<
ABAP Training G anelas as 'anelas são a base da construção do la(out As 'anelas podem ser criadas sem limites e tem por nalidade di#idir espacialmente as regi+es de um formulário para operaç+es independentes
*ssas 'anelas podem ser criadas basicamente em ; tipos distintos: &A=7 'anelas do tipo &A=7 são as mais importantes do relatório 0'anela pela "ual o formulário se guia4 Somente é permitido um tipo de 'anela &A=7 por formulário, e é a 9nica 'anela obrigatória em uma página Podese criar mais de uma 'anela &A=7 por página, no entanto essas 'anelas, na #erdade, só são di#ididas sicamente, uma #e! "ue seus elementos e processamento obedecem aos mesmos comandos, e n,o podem ter nomes diferentes A passagem de uma 'anela &A=7 para outra pode ser automática ou forçada pelo usuário Zuando o espaço f8sico de uma 'anela &A=7 está tomado e necessitase de mais dados na mesma, o formulário automaticamente passa Q pró6ima 'anela &A=7 do formulário C atra#és desse princ8pio "ue uma relatório ganha n9mero de páginas 1R
ABAP Training automaticamente "uando da e6ecução de um relatório desse tipo, conforme os dados são preenchidos Para forçar a passagem de uma 'anela &A=7 para outra, o usuário poderá utili!ar o comando: Y: 7*TV=7>.V A lógica de se"uncia das 'anelas &A=7 de um formulário segue sempre a um critério >entro de uma página a na#egação de uma &A=7 para outra segue de acordo com os 8ndices dessas 'anelas dentro do formulário, e "uando uma no#a página é gerada, a contagem segue a mesma disposição, continuamente . e6emplo abai6o, gura a situação de uma diagramação conforme uma página de 'ornal A se"uncia de preenchimento dos dados na página atra#és do po#oamento normal segue:
[AE essa 'anela apresenta uma caracter8stica própria, "ue necessita de #ericação constante do formulário com seus dados, "ue podem #ariar durante a e6ecução do relatório *sse tipo de 'anela de#e ser utili!ado "uando se pretende trabalhar com te6tos "ue #ariam, como e6emplos de mensagens "ue podem mudar durante o decorrer da e6ecução do formulário D.7ST são 'anelas "ue não merecem muita preocupação de processamento por parte do formulário, uma #e! "ue seus dados de#em ser mantidos os mesmos desde seu primeiro preenchimento até o fechamento do formulário Jeralmente nesse tipo de 'anela são inclu8do ob'etos e te6tos "ue permanecem os mesmos durante todo o relatório, independente do n9mero de páginas, como logos e rodapés
)
ABAP Training H Páginas as páginas são os elementos responsá#eis pelo agrupamento
das 'anelas durante certos momentos do relatório Jeralmente só são denidos duas páginas, "ue acabam em processo ree6i#o, por formulário
Jeralmente uma página 3=EST, "ue apresenta um la(out de apresentação dos documentos e outra 7*T, "ue contém o la(outs das outras páginas subse"uentes do documento =sso acontece, por e6emplo, "uando se "ue obter um relatório com o logotipo da empresa na primeira página, mas as seguintes, de#em ocupar a folha inteira com os dados do relatório até o nal Dada uma das páginas criadas de#em conter um nome 03=EST, 7*T,4 e pode conter um parágrafo default e um lin5 para a pró6ima página *sse lin5 ser#e para formar a se"uncia em "ue as páginas do relatório de#em ser geradas Seguindo o e6emplo anterior, de#er8amos informar: 3=EST 2 7*T 7*T 2 7*T
)1
ABAP Training Após a primeira página, seria chamada a segunda, com um la(out diferente 0sem o logotipo4 A partir dessa, todas apresentariam o mesmo tipo de la(out 0com dados do relatório apro#eitando a página inteira4 I Page VindoMs
As page MindoMs podem ser entendidas pelo nosso conceito de la(out propriamente dito São os elementos responsá#eis pela aparecimento ou não das 'anelas dentro de uma determinada página, bem como seus posicionamentos em relação Q folha a ser impressa C também atra#és das page MindoMs "ue o programador terá acesso aos Te9t )lements de cada uma dessas 'anelas, responsá#eis pelo tratamento dos dados em tempo de e6ecução do formulário
))
ABAP Training / Te6t *lements
Dorresponde Q logica de processamento e comportamento de uma 'anela durante a e6ecução do formulário C responsá#el pelos #alores "ue serão impressos no mesmo, bem como seu posicionamento dentro da 'anela e seu tipo de caracter >e dentro de uma Page VindoM, é poss8#el selecionarmos "ual"uer uma das 'anelas e6istentes em uma determinada página, simplesmente clicando o mouse sobre o seu nome e apertando o botão selecionar, ou mesmo dando um $doubleclic5% diretamente sobre o nome da 'anela dese'ada -ma #e! selecionada a 'anela, se apertarmos o botão Te6t *lement, uma tela semelhante Q do editor de ABAPYG do SAP irá se abrir, com as linhas onde a lógica da 'anela será introdu!ida
7esses elementos do SAPscript, o programador poderá utili!ar alguns comandos semelhantes ao do ABAPYG, com a indicação de "ue se trata de uma linha de comando para o formulário 0Y:, Q es"uerda da linha4 Abai6o,
);
ABAP Training alguns dos comandos "ue podem ser utili!ados de dentro dos elementos de te6to de uma 'anela em SAPscript: =3*FS**7>=3 DAS*VW*7 >*3=7* P*E3.E&-S=7JDWA7J=7J material4 B.3EA&*
declaração de #ariá#eis dentro da 'anela, com atribuição de #alor 0#er documentação própria nesse
=7DF->* . comando include dentro de uma 'anela de um formulário SAPscript ser#e para inserir um ob'eto no mesmo *sse ob'eto pode ser desde um logo, até um te6to com #árias linhas A sinta6e é bastante simples, e somente de#ese ter um cuidado bastante especial com o idioma "ue se trata esse ob'eto =ndependentemente do idioma do formulário, de$e;se sempre utilizar o idioma em que o ob.eto foi criado Y: =7DF->* name .B*DT ob'ect => id FA7J-AJ* spras
)G
ABAP Training anutenç,o de formul&rios A manutenção dos formulários é feita pela mesma transação citada anteriormente 0S*/14 7essa tela o nome do formulário e o idioma do mesmo são par@metros obrigatórios 7essa tela são feitas praticamente todas as operaç+es com os formulários do SAP:
1 Driar um formulário no#o -m formulário pode ser criado inteiramente a partir dessa transação Preenchendo um nome do formulário, "ue comece por N ou \, não diretamente seguidos por caracteres especiais, como o LOU, o usuário poderá apertar o botão !riar ou ir ao menu La=out ;< !riar . idioma preenchido será entendido como idioma original do formulário A partir da8, outros formulários poderão ser tradu!idos a partir desse original, nas mais diferentes l8nguas, porém todos manterão as caracter8sticas de la(out do formulário original Ao mesmo tempo "ue uma alteração desse original, implica na imediata alteração de todos os seus $lhos% )H
ABAP Training ) Dopiar formulário em outro idioma 0Tradução4
-ma #e! criado um formulário 0conforme descrito acima4, poderá ser copiado sobre ele, as informaç+es de um outro formulário do mesmo client, atra#és do menu La=out ;< !op= from , 'á de dentro da primeira tela do formulário criado 0Weader4
Atenção "ue essa cópia é el ao formulário copiado, e não poupa nenhuma informação "ue 'á e6istisse no formulário "ue recebe a cópia
)I
ABAP Training ; Dopiar um formulário de outro cliente
-m formulário pode também ser copiado de um outro client na mesma inst@ncia, atra#és do menu >tilit&rios ;< !op= from client , da primeira 'anela da transação S)71, fora de "ual"uer formulário espec8co
*ssa opção irá abrir uma outra 'anela "ue recebe basicamente ; informaç+es: 7ome do formulário a ser copiado Dliente em "ue se encontra o original 7ome da cópia no client corrente
)/
ABAP Training
.s outros dois campos de chec5 bo6 geralmente não são alterados pois tratam de informaç+es como cópia do formulário somente no idioma original e e6ibição ou não de um log de erros ao nal da e6ecução da cópia -ma #e! entrados os par@metros, de#ese apertar o botão e6ecutar e obter uma cópia com sucesso em todos os idiomas e6istentes do formulário . cliente de origem do formulário, "uando for cópia de forms standards, de#e ser mantido , uma #e! "ue o repositório dos formulários originais do SAP encontramse todos no , e podem ser lidos de todos os outros
)<
ABAP Training %nclus,o de Lo#os nos formul&rios -tili!ar logotipos em formulários SAPscripts, não é das tarefas mais simples "ue se possa ter Teoricamente falando, o processo é bastante simples e consiste em gerar no sistema um ob'eto no formato he6adecimal, "ue possa ser interpretado pelo SAPscript, originando a inclusão de uma imagem 7o entanto, de#ido ás limitaç+es e6postas no começo deste documento, isso pode le#ar um certo tempo até reprodu!ir o resultado dese'ado Para gerarmos o ob'eto no client dese'ado 0lembre "ue esse ob'eto não pode ser transportado]4, de#emos e6ecutar o programa standard RSTXLD! , com um ar"ui#o no formato ^T=3
)R
ABAP Training Preencher o primeiro campo 0le name4, com o path completo do ar"ui#o da imagem do logotipo *sse caminho pode ser no ser#idor ou local . segundo campo 0t(pe4 determina se o logotipo de#e ser gerado monocromático 0default4 ou colorido . 9ltimo par@metro "ue e6ige ser preenchido é o Te6t 7ame, onde é feita a atribuição do nome do ob'eto "ue será referenciado de dentro do formulário 0padrão: NW*&ADE.]4 A geração desse logo está intimamente ligado ao formato do ar"ui#o T=3 =sso "uer di!er "ue o seu tamanho obtido no formulário está relacionado ao tamanho da imagem geradora do ob'eto Tomar cuidado com o n9mero de cores e tonalidades da imagem e lembrar na hora de fa!er os testes, "ue o logotipo não aparece na tela, somente em impress+es no papel 0problema corrigido nas #ers+es atuais4 7esta hora, #ale lembrar todas as ressal#as feitas anteriormente: •
•
•
•
. ar"ui#o de#e estar no formato T=33 0e6tensão 'T%(4, n,o comprimido *ssa gura gerada nestes padr+es tem ainda algumas restriç+es para a sua aplicação *m primeiro lugar, o n9mero de p86eis da gura 0 a resolução da mesma, em >P= ? dots per inch 4 de#em ser e6atamente o n9mero de p86eis informado na tela de seleção do programa para se garantir "ue o logotipo se'a e6ibido no tamanho em "ue foi gerado Alguns programas de editoração gráca, como o Paint Shop Pro, possuem recursos para se determinar o tamanho da gura em cent8metros e até mudálo 0resi!e4, mantendose a resolução 0n9mero de p86els4 *m alguns casos, se o n9mero de p86eis não coincidir com o informado, a gura pode nem ser gerada no SAP, dicultando o trabalho do programador . n9mero de cores ou tonalidades de cin!a também precisam coincidir 0esse par@mentro #aria de acordo com a #ersão do SAP, de#endose estar atento aos dados na tela de seleção do programa4 A conguração da impressora no SAP pode alterar o tamanho e o formato do logotipo é a conguração da impressora no SAP . SAP utili!a a conguração da impressora para gerar o formulário e imprim8lo Se a conguração não esti#er correta, pode inuenciar no logotipo e na criação de linhas e cai6as 0B.*S4 Para se transportar um logotipo ou te6to, de#ese primeiro, associálo a uma Dhange Ee"uest, atra#és do programa standard RSTXTRA"
;
ABAP Training Alterações de Pro#ramas?La=outs Standards 7a maioria das #e!es o trabalho a ser reali!ado com Sapscripts é alterar os originais do SAP, pois estes raramente atendem as necessidades do cliente . procedimento para alteração depende muito das caracter8sticas do programa de po#oamento standard e das caracter8sticas das funç+es do SAP "ue irão utili!ar tal sapscript 7o entanto, alguns procedimentos são padr+es, e outros são utili!ados na grande maioria das alteraç+es 14 3a!er uma cópia do programa standard e dos includes 0se e6istirem4 "ue necessitam de alteração )4 3a!er uma cópia do la(outset standard ;4 "@O D)L)TAR 'anelas, elementos de te6tos, etc na cópia do la(outset &esmo "ue alguns 0ou todos4 os dados e 'anelas do standard não se'am utili!ados, o programa de po#oamento continuará tentando e6ecutar escritas em 'anelas e elementos de dados espec8cos, 'á "ue é uma cópia do standard .s no#os dados e 'anelas de#em ser apenas adicionados_ G4 *ncontrar as posiç+es ideais para alteraç+es no programa de po#oamento Zuando os no#os dados de#em ser impressos na &A=7, procurar por comandos VE=T*O3.E& dentro do programa e colocar as alteraç+es o mais pró6imo poss8#el do VE=T*O3.E& correto Se de#em ser impressos em outras 'anelas, procurar pelo comando DF.S*O3.E&Y*7>O3.E& e colocar as alteraç+es imediatamente antes destes comandos 0sempre "ue poss8#el4 H4 Dolocar todas as alteraç+es 'untas sempre "ue poss8#el, identicando #isi#elmente, atra#és de comentários, o bloco de alteraç+es =sso facilita a manutenção e #isuali!ação do código, além de facilitar a busca por poss8#eis erros, #isto "ue, na sua grande maioria, os programas standard da SAP são bastante complicados *33333333333333333333333333333333333333333333333333333333333333333333 * ***rite text to TET$ in+o * *33333333333333333333333333333333333333333333333333333333333333333333 * ************************** ALTERADO ******************************** *3333333333333333333333333333333333333333333333333333333333333333333 * * Eli&ina &enage& ON62222 cao ela exita *3333333333333333333333333333333333333333333333333333333333333333333 * rea+ ta>le _(ea+er_&g it( e: &eage.G = 'ON6'2 )_&g_onu = _(ea+er_&g3eHnu&2 +elete _(ea+er_&g (ere &eage.G = 'ON6'2 +elete _refer_&g (ere eHnu& = )_&g_onu2
;1
ABAP Training *Menage& p< &ateriai no perigoo :>r)cript3&engJ, = text3JJ,2 ******************************************************************** ** itart = B_,>>-3totli(2 if itart K ,J2 &axi&u& nu&>er of fiel+ in _,7PRNFT
;)
ABAP Training Lin-as e o9es: Para a criação de linhas e Bo6es nos formulários, utili!ase o comando Bo6 A sinta6e deste comando é a seguinte: Y: B. 6pos (pos V=>TW largura unidade(CH, cm) W*=JWT altura unidade 3EA&* espessura unidade =7T*7S=T\ intensidade (0 a 100%) 7o entanto, como podemos obser#ar, tornase muito dif8cil a criação de bo6es e linhas din@micos uma #e! "ue eles dependem da posição na 'anela na "ual estão sendo criados Apesar da apresentação ser a melhor, utili!andose bo6es din@micos, a comple6idade para seu desen#ol#imento na maioria dos casos não 'ustica sua aplicação -ma sa8da a ser aplicada nestes casos é a seguinte: Primeiro, criase um parágrafo especial, cu'o espaçamento entre linhas se'a o menor poss8#el: -F
Finha de separação Atributos standard *space'linhas B'B5 F7 &argem es"uerda 11H && Alinhamento Alinhes"
*m seguida, no formulário, simulase os bo6es da seguinte forma na 'anela &ain: -F AS AS AS -F
`-F=7*0/;4` XB2 =tem,,,,Dódigo,,,,Zuantidade,, -7,,,,Preço -nitário,,,, Preço Total XY2 XB2 ,,,, ,,,, ,, ,,,, cY =D&S ,,,, DY=mpostos XY2 XB2 ,,,, ,,,, ,, ,,,, 0E4 ,,,, 0E4 XY2 `-F=7*0/;4`
Domo o espaçamento entre linhas no parágrafo -F é pe"ueno, na hora da impressão, as linhas hori!ontais acabam se encontrando com as #erticais, simulandose os bo6es
;;
ABAP Training
Tabuladores: -m recurso e6tremamente importante e di#ersas #e!es es"uecidos pelos programadores são os tabuladores -ma das principais "uei6as dos programadores em relação ao Sapscript é "ue, "uando se altera a posição de um campo na impressão, acabase alterando as posiç+es dos demais, fa!endo com "ue o trabalho do programador se'a e6austi#o A alternati#a para isso não ocorrer é o uso dos tabuladores, denidos para cada parágrafo criado, conforme o e6emplo abai6o: =F
Finha de item Atributos standard *space'linhas 1 F7 Alinhamento Alinhes" Tabuladores I DW AlinhQ es"uerda )H DW AlinhQ es"uerda HG DW AlinhQ es"uerda /; DW AlinhQ es"uerda * a sua utili!ação no código ca:
=F
`*P.*B*FP`,,`*P.*&AT7`,,`*P.TN1`
.s tabuladores são representados no Sapscript por ) #8rgulas 0,,4 e seu espaçamento pode estar tanto em caracteres 0DW4 "uanto em cent8metros 0D&4 e mil8metros 0&&4 -ma ressal#a "ue de#e ser feita é "ue impressoras matriciais trabalham sempre com caracteres, dicultando um pouco a determinação do tamanho 7os casos onde a unidade se'a caracter, o espaçamento utili!ado é feito com base no caracter padrão, denido no header do formulário Agindose assim, garantese "ue os te6tos estarão sempre na posição e alinhados da maneira como plane'ada, facilitando futuras manutenç+es, como a alteração da posição ou tamanho de um determinado campo Além disso, a alteração da posição é feita somente em um lugar e não repetidamente no código, eliminado esforço desnecessário Por m, há uma outra ferramenta "ue pode a'udar no posicionamento dos te6tos, principalmente para impressoras matriciais *6istem réguas especiais "ue possuem as escalas mais comuns de caracteres -m e6emplo é a régua Trident modelo 3D1
;G
ABAP Training )9emplos •
Sapscript
333333333333333333333333333333333333333333333333333333333333333333333 33333333333 For&ul?rio 97R"_CRE#IT_MEMO 333333333333333333333333333333333333333333333333333333333333333333333 33333333333 Man+ante I+io&a Original lang2 Rele)ant for tranl2 $tatu
10J P P 9e Acti)e
#e)elop&ent cla
97RJ
Create+ >: $AOJ,J0A #ate J,2J2, Ti&e ,0-,0 Releae .JF $ignifica+o
Idioma Original de Criação
%eneral Multi3purpoe #e)elop&ent cla $AOJ,J0A
C(ange+ >:
-2J;2,
#ate
JJ-./
Ti&e
.JF
Releae
Nota +e CrQ+ito
$tan+ar+ attri>ute Firt page
FIR$T
Primeira página a ser
utilizada
#efault paragr2
MA
Parágrafo default para os
textos
Ta> top Page for&at Orientation Line
,JJ CM #INA/ Lan+cape 1JJ ,-JJ
Tipo de Papel Espaçamento entre as linhas Espaçamento entre os
caracteres
Font attri>ute Font fa&il: Font ie 7ol+ Italic 6n+erline+
CO6RIER ,JJ Point No No No
Fonte padrão do formulário Tamanho da fonte padrão
;H
ABAP Training 333333333333333333333333333333333333333333333333333333333333333333333 33333333333 Definiçes dos Characters C(aracter Attri>ute !trings
333333333333333333333333333333333333333333333333333333333333333333333 33333333333 !,
!-
!.
!ea+er , $tan+ar+ attri>ute Marer Font attri>ute Font fa&il: Font ie 7ol+ !ea+er $tan+ar+ attri>ute Marer Font attri>ute Font fa&il: Font ie 7ol+ !ea+er . $tan+ar+ attri>ute Marer Font attri>ute Font fa&il: Font ie 7ol+
No CO6RIER J Point 9e
No CO6RIER ,JJ Point 9e
No CO6RIER 1J Point 9e
333333333333333333333333333333333333333333333333333333333333333333333 33333333333 Definiçes dos tipos de Paragrap( Attri>ute parágrafos
333333333333333333333333333333333333333333333333333333333333333333333 33333333333 !,
Paragrafo , p< o (ea+er $tan+ar+ attri>ute Line pacing ,JJ LN Align&ent Left3aligne+ Ta>
Ta"ulaçes para o
parágrafo
,1JJ C! 11JJ C!
Left3aligne+ Left3aligne+
;I
ABAP Training JJJ C!
Left3aligne+
!-
Paragrafo - p< (ea+er $tan+ar+ attri>ute Line pacing ,JJ LN Align&ent Left3aligne+ Ta> 01JJ C! Left3aligne+ ,JJJJ C! Left3aligne+ ,,;JJ C! Left3aligne+
MA
Paragrafo p< Main $tan+ar+ attri>ute Line pacing Align&ent
,JJ LN Left3aligne+
333333333333333333333333333333333333333333333333333333333333333333333 33333333333 #anelas definidas para o 8in+o Attri>ute formulário
333333333333333333333333333333333333333333333333333333333333333333333 33333333333 !EA#ER !EA#_PRI MAIN TET TOTAL
Ca>eSal(o +a Nota 8in+o t:pe
CON$T
!ea+er p< Main 8in+o t:pe
CON$T
Main in+o 8in+o t:pe
MAIN
Texto +a Nota 8in+o t:pe
CON$T
Totai +a Nota 8in+o t:pe
CON$T
333333333333333333333333333333333333333333333333333333333333333333333 33333333333 Page Attri>ute Paginas do formulário com suas respecti$as %anelas
333333333333333333333333333333333333333333333333333333333333333333333 33333333333 FIR$T
Pri&eira P?gina Page counter
;/
ABAP Training Mo+e Nu&>ering t:pe Page in+o MAIN
!EA#ER
TET
TOTAL
INC Ara>ic nu&eral Left &argin 6pper &argin 8in+o i+t( 8in+o (eig(t Left &argin 6pper &argin 8in+o i+t( 8in+o (eig(t Left &argin 6pper &argin 8in+o i+t( 8in+o (eig(t Left &argin 6pper &argin 8in+o i+t( 8in+o (eig(t
-JJ JJ ,.-JJ -;JJ -JJ ,JJ ,.-JJ JJ -JJ .1JJ ,.-JJ .JJ -JJ .JJ ,.-JJ ;JJ
C! LN C! LN C! LN C! LN C! LN C! LN C! LN C! LN
333333333333333333333333333333333333333333333333333333333333333333333 33333333333 Text ele&ent for folloing in+o 333333333333333333333333333333333333333333333333333333333333333333333 33333333333 !EA#ER < < < !
Definição do parágrafo para a linha
7O PO$ J C! 9PO$ J C! 8I#T! ,.- C! !EI%!T LN FRAME ,J T8 7O PO$ J C! 9PO$ ; LN 8I#T! ,.- C! !EI%!T , LN FRAME ,J T8 IF 97R"$_NOTA3REPRINT E '$' REIMPRE$$OU!-KNOTA #E CRV#ITOU
r)_nota3+ataNW :>r)_nota3nu&ero Desati$a
Character !tring
< EL$E !U!-KNOTA #E nu&ero < EN#IF !, CLARIANT $
&ti$a Character !tring
CRV#ITOUr)_nota3+ataNW
:>r)_nota3 !alta p'
pr(x) ta"ulação
!, U!,KRao $ocialUr)_nota3raao0JG U!,KCliente Ur)_nota3cliente-JG U!,KFilial Ur)_nota3filial !, U!,KEn+ereSo Ur)_nota3en+ereco-1G U!,K7airro Ur)_nota3>airro Texto !, U!,KC2E2P2 Ur)_nota3cep,,G U!,KCi+a+e Fixo
Ur)_nota3ci+a+e,G
U!,KEta+o Ur)_nota3eta+o/G
;<
ABAP Training U!.KPRE@A#O$ $EN!ORE$ PARTICIPAMO$ A )2$a2 6E FI@EMO$ EM $6A CONTA O$ LANAMENTO$ A7AIOUr)_nota3tipo !, U!,K"alor por Exteno Ur)_nota3tot_exten,JJG U!,KCenta)oUr)_nota3filial1G U!,K$etorUr)_nota3etor/G U!,K"en+e+orUr)_nota3)en+e+orG U!,K@onaUr)_nota3ona1G U!,K#oc2 EntrUr)_nota3+oc_entr,G U!,KNr)_nota3 +oc_entr,,G U!,K+e Ur)_nota3+ata Campo de ta"ela'estrutura
!EA#_PRI
Indicação de linha de comando
< 7O 8I#T! ,.- C! !EI%!T , LN FRAME ,J T8 U!,K CX+igo Pro+uto YEM7 Y6N2Y uanti+a+e
MAIN
YU
Elemento de dados
r)_nota3pro+uto,0G :>r)_nota3uni+a+e.G:>r)_nota3Huant,0G:>r)_nota3 no&e.,G :>r)_nota3preco_un,/G:>r)_nota3)al_&erc,/G :>r)_nota3)al_+ec,-G:>r)_nota3porc_ipi0G :>r)_nota3)al_ipi,0G
No&e "alor
;R
ABAP Training *
uline,.-G Parágrafo standard
TET
*inha de Comentários
< 7O 8I#T! ,.- C! !EI%!T . LN FRAME ,J T8 <* Exi>e tipo no ca&po texto * U!,KTextoUr)_nota3tipo
TOTAL < 7O PO$ J C! 9PO$ J C! 8I#T! ,0 C! !EI%!T . LN FRAME ,J T8 < 7O PO$ ,0 C! 9PO$ J C! 8I#T! 0 C! !EI%!T . LN FRAME ,J T8 < 7O PO$ -J C! 9PO$ J C! 8I#T! ,/ C! !EI%!T . LN FRAME ,J T8 < 7O PO$ ./ C! 9PO$ J C! 8I#T! ,/ C! !EI%!T . LN FRAME ,J T8 < 7O PO$ / C! 9PO$ J C! 8I#T! ,/ C! !EI%!T . LN FRAME ,J T8 < 7O PO$ 1- C! 9PO$ J C! 8I#T! ,/ C! !EI%!T . LN FRAME ,J T8 < 7O PO$ ;1 C! 9PO$ J C! 8I#T! ,/ C! !EI%!T . LN FRAME ,J T8 < 7O PO$ J C! 9PO$ J C! 8I#T! ,/ C! !EI%!T . LN FRAME ,J T8 < 7O PO$ ,J/ C! 9PO$ J C! 8I#T! ,/ C! !EI%!T . LN FRAME ,J T8 < 7O PO$ ,, C! 9PO$ J C! 8I#T! ,/ C! !EI%!T . LN FRAME ,J T8 < 7O PO$ J C! 9PO$ J C! 8I#T! ,.- C! !EI%!T ; LN FRAME ,J T8 * U!,K "al2 Tri>2 ICM$ ZICM$ "alor ICM$ "alor Merca+oria "alor #econto "alor IPI "al2 Outro A>at2 "alor Frete "al2 $eguro "al2 Total NotaUr)_nota3porc_ic&0G:>r)_nota3tot_ic&,/G :>r)_nota3tot_&erc,/G:>r)_nota3tot_+ec,/G :>r)_nota3tot_ipi[,,.G :>r)_nota3tot_eg,/G:>r)_nota3 total,/G MA MA MA ____________________________ ___________________________ MA Ainatura Ainatura
G
ABAP Training )9emplo: RelatCrio de A$aliaç,o de (ornecedores A seguir, temos o programa de po#oamento e o formulário Sapscript para um Eelatório de A#aliação de 3ornecedores, onde o usuário tem a opção de rodar um relatório ou imprimir o formulário A lógica de ambos é comple6a 7o entanto, ser#em como referncia de estudo pois abrangem "uase todo o conte9do acima mencionado, incluindo, até, bo6es din@micos, ou se'a, "ue #ariam com a "uantidade de linhas a ser e6ibida e impressão em frente e #erso 0para isso, necessitase de uma impressora com essa capacidade e programada para isso Por m, se o formulário for um en#elope como neste caso, é necessária a utili!ação de uma má"uina en#elopadora4
G1
ABAP Training ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^ ^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ ^ ^ Dondencial e Proprietário ^ ^ ^ ^ Dop(right )1, Accenture ^ ^ ^ ^ Todos os direitos reser#ados ^ ^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ ^ ^ ^ 7ome do Shell: \TEP1 [ersão do Shell: #11 ^ ^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^ 7ome do Programa : NEZ&1 ^ ^ T8tulo do Programa : Shell ABAPYG Fist Eeport ^ ^ Programador : Antonio Delso Wunnicutt Dortada ^ ^ >ata : HY)Y)1 ^ ^ ltima atuali!ação : HY)Y)1 ^ ^ ^ ^ >escrição : Driar uma transação .7Fine "ue sera chamada do menu^ ^ SAP, para denir o escopo dos calculos de a#aliacao ^ ^ de fornecedores ^ ^ *sta transacao de#era fa!er a demosntracao dos resul ^ ^ tados dos calculos na tela, e permitir a impressao ^ ^ deste relatorio ou a geracao dos dados para ser lidos ^ ^ por uma planilha e6cel ^ ^ ^ ^ ^ ^ =nclude : NN=W*A>E ^ ^ ^ ^ Fista de &odicaç+es: ^ ^ >ata Autor Dorr >escrição ^ ^ HY)Y)1 >esen#ol#imento inicial do prg ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ E*P.ET NEZ&1 7. STA7>AE> PAJ* W*A>=7J 7ão mostra o cabeçalho padrão SAP F=7*S=N* 1/ Fargura do report de nnn caracteres F=7*D.-7T H< Domprimento do report de nn caracteres &*SSAJ*=> N& Dlasse de mensagens é N& E*S*E[* < F=7*S Pelo menos n linhas serão impressas na 9ltima página XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX2222222 22222222222222222222222222222222 S*SS. >* >*DFAEA. >* >A>.S
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX2222222 22222222222222222222222222222222 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^ =ncludes ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ =7DF->*: NN=W*A>E Dabeçalho padrão de report ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^ Tabelas ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ TABF*S: &AEA, &estre do material: dados gerais &AT, Te6tos bre#es de material DAB7, Daracter8stica A-SP, [alores das modalidades das caracter8sticas F3A1, &estre de fornecedores 0parte geral4 ZA[*, Processamento de controle: decisão de utili ZAFS, Eegistro do lote de controle *ST, Status indi#idual por ob'eto [=Z&*F, 7ota cabeçalho [=Z&S&, 7ota medidas *FBP, Dritério principal da a#aliação de forneced T1G/D, >enição dos subcritérios para a a#aliação *P., =tem do documento de compras T1V, DentrosYliais NSAPSDE=P), *strutura au6iliar de Eelatório de A#aliaçã =TDP., SAPscript output interface T)G/, >enominaç+es e denominação bre#e dos meses 7A1, &estre de clientes 0parte geral4 THT >enominação dos pa8ses ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^ >ados: ^ ^ Donstantes 0DO4 ^ ^ [aria#eis 0[O4 ^ ^ Tabelas =nternas 0TO4 ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^ [aria#eis ^ >ATA: DO&=FWA.0/4 T\P* 7 [AF-* 1, [alor de calc de 7ota DOF=7WA T\P* P >*D=&AFS ), Dte pY 7 linhas Zuebra Pág DOF=7WA1 T\P* P >*D=&AFS ), Dte pY 7 linhas Zuebra Pág DOS=&0;4 T\P* D [AF-* S=&, S=& DO7A.0;4 T\P* D [AF-* 7A., 7A. DO\*S0;4 T\P* D [AF-* \*S, S=& DO7.0)4 T\P* D [AF-* 7., 7A. DOPP&0<4 T\P* D [AF-* .BOPP&, DOF.T*0<4 T\P* D [AF-* .BOF.T*, DO7AS0;4 T\P* D [AF-* 7AS, DO&TO110I4 T\P* D [AF-* &T11, DO>*N0;4 T\P* D [AF-* 1, DON0;4 T\P* D [AF-* N1, DO*EE.014 T\P* D [AF-* *EE. , DOP T\P* D [AF-* P, =dioma Portugus DO*SP T\P* D [AF-* S, idioma espanhol
G)
ABAP Training DOAEJ0)4 T\P* D [AF-* AE, Argentina DOBE0)4 T\P* D [AF-* BE, Brasil DOS=0)4 T\P* D [AF-* Sj, Sj DO*7J T\P* D [AF-* * =dioma ingls >ATA: DOSTAT0H4 T\P* D [AF-* =))G, DONAET014 T\P* D [AF-* F, DOWE=T0)4 T\P* D [AF-* G >ATA: [OT=&* T\P* P >*D=&AFS ), [arPY arma!enar 7oFinhas0cm4 [OAT3F[ T\P* P >*D=&AFS ), [O[AFOPP&0/4 T\P* D, [O[AFOF.T*0/4 T\P* D, [O[AFO7AS0;4 T\P* D, [O3.E7*DOH0H4 T\P* D, [O=>=.&A F=* F3A1SPEAS idioma do fornecedor ^ #aria#eis au6iliares >ATA: [OPE=&O[*N T\P* D [AF-* T, [O-FT=&.O>=A F=* S\>AT-&, [OPE=&*=E.O>=A F=* S\>AT-&, [O>=AODAFD-F. F=* S\>AT-&, [O&-FT=PF=DA>.E0H4 T\P* 7, [OPE=&*=E.O&*S F=* S\>AT-&, [O>TO=7=D=. F=* S\>AT-&, [O>TO3=& F=* S\>AT-&, [O>T=OA7AF=S* F=* S\>AT-&, [OZT>*014 T\P* D, [OZT>*OSAP T\P* =, [OZT>*OSAP/ T\P* = ^ #aria#eis numericas >ATA: [OS-&OPP&=AO& F=* T/I-B*T3A, [OS-&O*&>=AOAD F=* T/I-B*T3A, [OT.TO7.TASO& F=* T/I-B*T3A, [OT.TO7.TASOAD F=* T/I-B*T3A,
[O3AT.EO73F0;4 [O3AT.EO7PE0;4 [O3AT.EO7DZ0;4 [OT.TOP.7>0H4 [OT.TO7Z3O& [OT.TO7Z3OAD
T\P* D, T\P* D, T\P* D, T\P* =, F=* T/I-B*T3A, F=* T/I-B*T3A
^ #aria#eis de total por centro >ATA: [OD*7TE.O73F F=* T/I-B*T3A, [OD*7TE.O7PE F=* T/I-B*T3A, [OD*7TE.O7DZ F=* T/I-B*T3A, [OD*7TE.O7Z3 F=* T/I-B*T3A, [OD*7TE.O7PT F=* T/I-B*T3A, [OD*7TE.O7AS F=* T/I-B*T3A, [OD*7TE.OPP& F=* T/I-B*T3A, [OD*7TE.OPP&O.B F=* T/I-B*T3A, [OD*7TE.OF.T F=* T/I-B*T3A, [OD*7TE.OF.TO.B F=* T/I-B*T3A
^ #aria#eis de trabalho >ATA: [OV*ES F=* ZAFSV*E, [OF=37E F=* ZAFSF=37E, [O&AT7E F=* ZAFS&AT7E, [OT=P.O73 F=* ZAFSAET, [OZ*77NAWF F=* ZA[*Z*77NAWF, [OF=7WAS0I4 T\P* 7 ^ #ariá#eis de controle de impressão em branco >ATA: [ODW*DO73FO& T\P* D, ag para 73F K kF.T K BEA7D. [ODW*DOPP&O& T\P* D, ag para PP& K 7PE K BEA7D. [ODW*DO7ASO& T\P* D, ag para 7AS K BEA7D. [ODW*DO7Z3O& T\P* D, ag para 7Z3 K BEA7D. [ODW*DO73FOAD T\P* D, ag para 73F K kF.T K BEA7D. [ODW*DOPP&OAD T\P* D, ag para PP& K 7PE K BEA7D. [ODW*DO7ASOAD T\P* D, ag para 7AS K BEA7D. [ODW*DO7Z3OAD T\P* D ag para 7Z3 K BEA7D. ^ Tabela =nterna ^ ^ Tabela interna para arma!enar os #alores a serem utili!ados no cálculo ^ das notas para os caso: Acumulado no Dentro e Acumulado na &TB >ATA: B*J=7 .3 =OAD-& .DD-ES , D*7TE. F=* ZAFSV*E, F=37E F=* ZAFSF=37E, S-&OPP&1O& F=* PD)/B*TP*, S-&OPP&1OAD F=* PD)/B*TP*, S-&OATEASO& F=* T/I-B*T3A, S-&OATEASOAD F=* T/I-B*T3A, S-&O*&>=AO& F=* T/I-B*T3A, S-&O*&>=AOAD F=* T/I-B*T3A, S-&OPP&
G;
ABAP Training S-&O7PTO& F=* T/I-B*T3A, S-&O7PTOAD F=* T/I-B*T3A, 7-&O7PTO& F=* T/I-B*T3A, 7-&O7PTOAD F=* T/I-B*T3A, 7-&O73FO& F=* T/I-B*T3A, 7-&O73FOAD F=* T/I-B*T3A >ATA: *7> .3 =OAD-& >ATA: B*J=7 .3 =OAD-&OD*7TE. .DD-ES , D*7TE. F=* ZAFSV*E, S-&OPP&1 F=* T/I-B*T3A, S-&OATEAS F=* T/I-B*T3A, S-&O*&>=A F=* T/I-B*T3A, S-&OPP&ATA: *7> .3 =OAD-&OD*7TE. >ATA: B*J=7 .3 =OZA[* .DD-ES , PE-*3F.S F=* ZA[*PE-*3F.S, 7 lote de controle NAET F=* ZA[*NAET, Dódigo: lote de controle, lote Z*77NAWF F=* ZA[*Z*77NAWF, jndice de "ualidade [B*V*ET-7J F=* ZA[*[B*V*ET-7J, A#aliação do code [>AT-& F=* ZA[*[>AT-& >ata do code para a decde util >ATA: *7> .3 =OZA[* >ATA: B*J=7 .3 =OZAFS .DD-ES , PE-*3F.S F=* ZAFSPE-*3F.S, 7 lote de controle V*ES F=* ZAFSV*E, Dentro AET F=* ZAFSAET, Tipo de controle F=37E F=* ZAFSF=37E, 7 conta do fornecedor &AT7E F=* ZAFS&AT7E, 7 material F&*7J*SDW F=* ZAFSF&*7J*SDW, Eegistro do lote de controle F&*7J*=ST F=* ZAFSF&*7J*=ST, Eegistro do lote de controle .B7E F=* ZAFS.B7E 7 ob'eto >ATA: *7> .3 =OZAFS >ATA: B*J=7 .3 =O*ST .DD-ES , .B7E F=* *ST.B7E, 7 ob'eto =7ADT F=* *ST=7ADT Dódigo: status inati#o >ATA: *7> .3 =O*ST >ATA: B*J=7 .3 =OTAB3=& .DD-ES , V*ES F=* ZAFSV*E, Dentro F=37E F=* ZAFSF=37E, 3ornecedor PP&1O&0/4 T\P* D, PP&1OAD0/4 T\P* D, PP&O&0/4 T\P* D, PP&OAD0/4 T\P* D, 73FO&0H4 T\P* D, 73FOAD0H4 T\P* D, F.TO&0/4 T\P* D, F.TOAD0/4 T\P* D, 7PEO&0H4 T\P* D, 7PEOAD0H4 T\P* D, 7PTO&0H4 T\P* D, 7PTOAD0H4 T\P* D, 7DZO&0H4 T\P* D,
7DZOAD0H4 T\P* D, 7ASO&0H4 T\P* D, 7ASOAD0H4 T\P* D, 7Z3O&0H4 T\P* D, 7Z3OAD0H4 T\P* D, F.TO.BO&014 T\P* D, F.TO.BOAD014 T\P* D, PP&O.BO&014 T\P* D, PP&O.BOAD014 T\P* D >ATA: *7> .3 =OTAB3=& >ATA: B*J=7 .3 =OT.TOD*7TE. .DD-ES , V*ES F=* ZAFSV*E, centro 73F0H4 T\P* D, 7PE0H4 T\P* D, 7DZ0H4 T\P* D, 7Z30H4 T\P* D, 7PT0H4 T\P* D, PP&0/4 T\P* D, F.T0/4 T\P* D >ATA: *7> .3 =OT.TOD*7TE. >ATA: B*J=7 .3 =OAD-&O&TB, 73FOAD0H4 T\P* D, 7PEOAD0H4 T\P* D, 7DZOAD0H4 T\P* D, 7Z3OAD0H4 T\P* D, 7PTOAD0H4 T\P* D, PP&OAD0/4 T\P* D, F.TOAD0/4 T\P* D >ATA: *7> .3 =OAD-&O&TB >ATA: B*J=7 .3 =OT.TO3.E7*D .DD-ES , F=37E F=* ZAFSF=37E, 73FO&0H4 T\P* D, 73FOAD0H4 T\P* D, 7PEO&0H4 T\P* D, 7PEOAD0H4 T\P* D, 7DZO&0H4 T\P* D, 7DZOAD0H4 T\P* D, 7Z3O&0H4 T\P* D, 7Z3OAD0H4 T\P* D, 7PTO&0H4 T\P* D, 7PTOAD0H4 T\P* D, PP&O&0/4 T\P* D, PP&OAD0/4 T\P* D, F.TO&0/4 T\P* D, F.TOAD0/4 T\P* D >ATA: *7> .3 =OT.TO3.E7*D >ATA: B*J=7 .3 =O3.E7*D .DD-ES , F=37E F=* F3A1F=37E, fornecedor PP&O.B0/4 T\P* D, F.TO.B0/4 T\P* D, 7AS0;4 T\P* D >ATA: *7> .3 =O3.E7*D >ATA: B*J=7 .3 =O3.E7*DO&AT .DD-ES , F=37E F=* F3A1F=37E, &AT7E F=* &AEA&AT7E, PP&O.B014 T\P* D, F.TO.B014 T\P* D >ATA: *7> .3 =O3.E7*DO&AT >ATA: B*J=7 .3 =O[=Z&*F .DD-ES , &AV*ES F=* [=Z&*F=V*E,
GG
centro
ABAP Training
F=37-& F=* [=Z&*FF=37-&, fornecedor &AT7E F=* [=Z&*F&AT7E, material STE&7 F=* [=Z&*FSTE&7, >ata de in8cio dese'ada Z&7-& F=* [=Z&*FZ&7-&, 7 nota .B7E F=* [=Z&*F.B7E, n ob'eto *B*F7 F=* [=Z&*F*B*F7, Pedido *B*FP F=* [=Z&*F*B*FP =tem >ATA: *7> .3 =O[=Z&*F >ATA: B*J=7 .3 =O*STO7DZ .DD-ES , .B7E F=* *ST.B7E, 7 ob'eto =7ADT F=* *ST=7ADT Dódigo: status inati#o >ATA: *7> .3 =O*STO7DZ >ATA: B*J=7 .3 =O[=Z&S& .DD-ES , Z&7-& F=* [=Z&S&Z&7-&, *E>AT F=* [=Z&S&*E>AT regist >ATA: *7> .3 =O[=Z&S&
7 nota >ata de criação do
>ATA: B*J=7 .3 =OF3A1 .DD-ES , F=37E F=* F3A1F=37E, 7A&*1 F=* F3A17A&*1, SPEAS F=* F3A1SPEAS, STEAS F=* F3A1STEAS, P3ADW F=* F3A1P3ADW, PSTFN F=* F3A1PSTFN, .ET1 F=* F3A1.ET1, E*J=. F=* F3A1E*J=., FA7>1 F=* F3A1FA7>1 >ATA: *7> .3 =OF3A1
7 conta do fornecedor 7ome 1 Dha#e do idioma Eua e n D6Postal Dódigo Postal 0D*P4 Didade *stado Pais
>ATA: B*J=7 .3 =O*FBP .DD-ES , F=37E F=* *FBPF=37E, B*-ET F=* *FBPB*-ET >ATA: *7> .3 =O*FBP
7 conta do fornecedor 7ota
>ATA: B*J=7 .3 =OT1V .DD-ES , V*ES F=* T1VV*ES, 7A&* F=* T1V7A&*1, SPEAS F=* T1VSPEAS, STEAS F=* T1VSTEAS, P3ADW F=* T1VP3ADW, PSTFN F=* T1VPSTFN, .ET1 F=* T1V.ET1, E*J=. F=* T1VE*J=., FA7>1 F=* T1VFA7>1 >ATA: *7> .3 =OT1V >ATA: B*J=7 .3 =OE*&*T, V*ES F=* 7A1V*ES, 7A&* F=* 7A17A&*1, STEAS F=* 7A1STEAS, P3ADW F=* 7A1P3ADW, PSTFN F=* 7A1PSTFN, .ET1 F=* 7A1.ET1, E*J=. F=* 7A1E*J=., FA7>1 F=* 7A1FA7>1 >ATA: *7> .3 =OE*&*T >ATA: B*J=7 .3 =OPA=S .DD-ES , FA7>1 F=* THTFA7>1, FA7> F=* THTFA7> >ATA: *7> .3 =OPA=S >ATA: B*J=7 .3 =O>*TO&AT .DD-ES ,
Dentro 7ome 1 Dha#e de =dioma &orada D6Postal D*P Didade *stado Pais
Dentro 7ome 1 &orada D6Postal D*P Didade *stado Pais
de
V*ES F=37E &AT7E >ATA
F=* T1VV*ES, F=* F3A1F=37E, F=* &AEA&AT7E, F=* ZA[*[>AT-&,
Dentro 7 conta do fornecedor 7 material >ata do code para a
T=P.O730)4 T\P* D, Tipo 73 F&*7J*SDW F=* ZAFSF&*7J*SDW, Ztdre'eitada em amostr Z*77NAWF F=* ZA[*Z*77NAWF, jndice de "ualidade F&*7J*=ST F=* ZAFSF&*7J*=ST Zuantidade de lote real >ATA: *7> .3 =O>*TO&AT >ATA: B*J=7 .3 =OTABO>*TO3=& .DD-ES , V*ES F=* T1VV*ES, Dentro F=37E F=* F3A1F=37E, 7 conta do fornecedor &AT7E F=* &AEA&AT7E, &aterial PP&O&0/4 T\P* D, PP&OAD0/4 T\P* D, F.TO&0/4 T\P* D, F.TOAD0/4 T\P* D >ATA: *7> .3 =OTABO>*TO3=& >ATA: B*J=7 .3 =O&AT .DD-ES , &AT7E F=* &AT&AT7E, &AT F=* &AT&AT >ATA: *7> .3 =O&AT
material descricao
>ATA: B*J=7 .3 =O*P. .DD-ES , *B*F7 F=* [=Z&*F*B*F7, *B*FP F=* [=Z&*F*B*FP, V*ES F=* *P.V*ES >ATA: *7> .3 =O*P.
pedido item do pedido centro
>ATA: B*J=7 .3 =OTABOE*S .DD-ES , V*ES F=* ZAFSV*E, centro F=37E F=* ZAFSF=37E, fornecedor PP&O& F=* T/I-B*T3A, PP&OAD F=* T/I-B*T3A, 73FO& F=* T/I-B*T3A, 73FOAD F=* T/I-B*T3A, F.TO& F=* T/I-B*T3A, F.TOAD F=* T/I-B*T3A, 7PEO& F=* T/I-B*T3A, 7PEOAD F=* T/I-B*T3A, 7PTO& F=* T/I-B*T3A, 7DZO& F=* T/I-B*T3A, 7DZOAD F=* T/I-B*T3A, 7ASO& F=* T/I-B*T3A, 7Z3O& F=* T/I-B*T3A, 7Z3OAD F=* T/I-B*T3A, .BO& F=* T/I-B*T3A, .BOAD F=* T/I-B*T3A >ATA: *7> .3 =OTABOE*S >ATA: B*J=7 .3 =OE*SO=7>=D* .DD-ES , F=37E F=* &S*JF=37E, fornecedor V*ES F=* &S*JV*ES, centro PP&O&0/4 T\P* D, PP&OAD0/4 T\P* D, F.TO&0/4 T\P* D, F.TOAD0/4 T\P* D, F.TO.BO&014 T\P* D, PP&O.BO&014 T\P* D >ATA: *7> .3 =OE*SO=7>=D*
GH
ABAP Training >ATA: B*J=7 .3 =ODAB7 .DD-ES , AT=77 F=* DAB7AT=77, A>NWF F=* DAB7A>NWF, AT7A& F=* DAB7AT7A&, AT3.E F=* DAB7AT3.E >ATA: *7> .3 =ODAB7 >ATA: B*J=7 .3 =OA-SP .DD-ES , .B* F=* A-SP.B*, AT=77 F=* A-SPAT=77, ATVET F=* A-SPATVET, AT3F[ F=* A-SPAT3F[, FAET F=* A-SPFAET >ATA: *7> .3 =OA-SP
Daracter8stica interna 79mero interno 7ome da caracter8stica 3ormato da caracter8
Dha#e do ob'eto Daracter8stica interna [alor da caracter8st [alor interno #8rgula Tipo de classe
>ATA: B*J=7 .3 =OD*7TE. .DD-ES , V*ES F=* T1VV*ES >ATA: *7> .3 =OD*7TE. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ ^ Par@metros de entrada : ^ ^ Select .ptions 0SO4 ^ ^ Parameters 0PO4 ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ S*F*DT=.7SDE**7 B*J=7 .3 BF.D B1 V=TW 3EA&* T=TF* T1 S*F*DT.PT=.7S: S.OD*7T 3.E F3A1V*ES, centro para impressão S.O3.E7* 3.E F3A1F=37E, fornecedor S.O&AT7E 3.E &AEA&AT7E, material S.OV*ES 3.E F3A1V*ES centros pY calc acum &TB S*F*DT=.7SDE**7 *7> .3 BF.D B1 S*F*DT=.7SDE**7 B*J=7 .3 BF.D B) V=TW 3EA&* T=TF* T) PAEA&*T*ES: PO&*S F=* S;1SP&.7 .BF=JAT.E\, ms de analise POP*E=.>0)4 T\P* D .BF=JAT.E\ per8odo 0mes p tras4 S*F*DT=.7SDE**7 *7> .3 BF.D B) S*F*DT=.7SDE**7 B*J=7 .3 BF.D B; V=TW 3EA&* T=TF* T; PAEA&*T*ES: POS.PP& AS DW*DB., só ppm POES-& AS DW*DB. relatório sumari!ado S*F*DT=.7SDE**7 *7> .3 BF.D B; S*F*DT=.7SDE**7 B*J=7 .3 BF.D BG V=TW 3EA&* T=TF* TG PAEA&*T*ES: POEA3 AS DW*DB., imprime 3ormulário do EA3 PO=&PE* F=* -SE1SPF>, =mpressora POE*&*T F=* 7A1-77E, remetente POBATDW AS DW*DB. =mpressão #ia Batch S*F*DT=.7SDE**7 *7> .3 BF.D BG XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX2222222 22222222222222222222222222222222 S*SS. >* PE.D*SSA&*7T. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX2222222 22222222222222222222222222222222 ^^ =7=T=AF=NAT=.7 Fogica para defaults inteligentes ^^
T1 K T*T1 T) K T*T) T; K T*T; TG K T*TG
Daracter8sticas Per8odo de Análise Apresentação >ados para EA3
^^ AT S*F*DT=.7SDE**7 Tratamento de *rros e lógica para tela de seleção ^^ ^ Dondiç+es de erro na tela de seleção: ^ Se ambos os modos de apresentação estão selecionados =3 POS.PP& K A7> POES-& K &*SSAJ* *<; V=TW Selecionar apenas um modo de apresentação *7>=3 ^ Se o ms informado está incorreto =3 PO&*SG0)4 2 1) .E PO&*SG0)4 K &*SSAJ* *<; V=TW &s de análise errado *7>=3 ^ Se o per8odo de análise está incorreto =3 POP*E=.> XK &*SSAJ* *<; V=TW Per8odo de análise errado *7>=3 =3 POEA3 X2 SPAD* =3 PO=&PE* *Z SPAD* &*SSAJ* *;H1 =nformar uma impressora_ *7>=3 ^ #erica se o campo remetente está preenchido =3 POE*&*T *Z SPAD* &*SSAJ* *H1) informar n9mero do emitente *7>=3 *7>=3 ^ #erica se o centro está preenchido "uando o processamento for em ^ batch =3 POBATDW 7* SPAD* Se for processamento em batch A7> S.OV*ES =S =7=T=AF &*SSAJ* *H1; falta centro especicado *7>=3 Se for processamento em batch =3 S.OV*ES *Z SPAD* =3 S.O3.E7* *Z SPAD* =3 S.O&AT7E *Z SPAD* A7> POEA3 7* ^Dentro, 3ornecedor e &aterial estão em branco _ Processamento demorado &*SSAJ* V;IH *7>=3 *7>=3 *7>=3 =3 S.OD*7T 7* S*F*DT V*ES 3E.& T1V =7T. TABF* =OD*7TE. VW*E* V*ES =7 S.OD*7T F..P AT =OD*7TE. =3 =OD*7TE.V*ES =7 S.OV*ES *FS*
GI
ABAP Training &*SSAJ* *<; V=TW .0s4 centro0s4 selecionado0s4 não está0ão4 inclu8do0s4 no0s4 centro0s4 da &TB considerado0s4 *7>=3 *7>F..P *7>=3 ^^ STAET.3S*F*DT=.7 Processamento principal ^^ P*E3.E& DAFD-FAOP*E=.>. ^ form para selecao dos dados referente a nota de fornecimento de lotes, ^ nota de processo e nota de pontualidade P*E3.E& 3OS*F*DTO73FPEPT ^ 3orm para selecao dos dados referente a nota compromisso com "ualida P*E3.E& 3OS*F*DTO7DZ ^ form para selecao dos dados refer a nota de a#aliacao de sistemas P*E3.E& 3OS*F*DTO7AS ^ form para selecao dos dados ref a nota de "ualidade de fornecimento P*E3.E& 3OS*F*DTO7Z3 ^ Dalcula os #alores sumari!ados P*E3.E& 3ODAFDO>*TO&AT ^ Dalcula PP& e .B P*E3.E& 3ODAFDOPP&O.B ^ acha descricoes P*E3.E& 3OADWAO>*SDE=D.*S ^ Dalcula #alores acumulados para os Dentros e &TB P*E3.E& 3ODAFDOAD-& ^ #erica se solicitou impressao do SAPSDE=PT e chama o form =3 POEA3 K P*E3.E& 3OPE*PAEAOSAPSDE=PT *FS*=3 POS.PP& K P*E3.E& 3OPE=7TOS.PP& *FS*=3 POES-& K P*E3.E& 3OPE=7TOES-& *FS* P*E3.E& 3OPE=7TOE*P.ET *7>=3 ^^ *7>.3S*F*DT=.7 3im do processamento principal ^^ ^ ^^ T.P.3PAJ* Dabeçalho 0Aparece sempre no topo da tela4 ^^ P*E3.E& 3OW*A>*E -S=7J S\T=TF* SPAD* SPAD* SPAD* 3.E&AT D.F.E D.FOW*A>=7J VE=T*: Y) 3.E7*D*>.E, 1H 7.&*, 1/ ,
Y) D*7TE., 1H >*SDE=., 1/ 3.E&AT D.F.E D.FOW*A>=7J VE=T*: YH &SYA7., ;; 73F, G< 7PE, I; 7DZ, /< 7Z3, R; 7PT, 1< PP&, 1); .B, 1;< kF.T, 1H; .B, 1/ -F=7* ^^ T.P.3PAJ* >-E=7J F=7*S*F*DT=.7 ^^ P*E3.E& 3OW*A>*E -S=7J S\T=TF* SPAD* SPAD* SPAD* E*A> TABF* =OT1V V=TW *\ V*ES K =OTABO>*TO3=& V*ES 3.E&AT D.F.E D.FOW*A>=7J VE=T*: Y) j7>=D* PP& * F.T*S 7. D*7TE., =OTABO>*TO3=&V*ES, , =OT1V7A&*, 1/ ^ format color colOheading VE=T*: Y1 , H; &s , /R Acum , 1/ VE=T*: Y) &aterial, 1/ >escrição Bre#e, H< PP&, /) kF.T, PP&, RR kF.T, 11I .B PP&, 1;H .B kF.T, 1/ -F=7* ^^ AT F=7*S*F*DT=.7 ^^ =3 POES-& 7* P*E3.E& 3OPE=7TOE*PO>*T *7>=3 ^^ ^^ *7>.3PAJ* Eodapé ^^ ^ ^XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX2222222 22222222222222222222222222222222^ ^ S*SS. >* 3.E&S ^ ^XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX2222222 22222222222222222222222222222222^
G/
ABAP Training ^ ^^ ^ 3orm 3OS*F*DTO73FPEPT ^^ ^ 3uncao para selecao de dados do mes e do periodo ^ ^^ 3.E& 3OS*F*DTO73FPEPT ^ selecionar dados da tabela ZA[* S*F*DT PE-*3F.S NAET Z*77NAWF [B*V*ET-7J [>AT-& 3E.& ZA[* =7T. TABF* =OZA[* VW*E* [>AT-& 2K [O>TO=7=D=. A7> [>AT-& XK [O>TO3=& A7> NAET K DONAET =3 S\S-BED K S*F*DT PE-*3F.S V*E AET F=37E &AT7E F&*7J*SDW F&*7J*=ST .B7E 3E.& ZAFS =7T. TABF* =OZAFS 3.E AFF *7TE=*S =7 =OZA[* VW*E* PE-*3F.S K =OZA[*PE-*3F.S A7> V*E =7 S.OV*ES A7> F=37E =7 S.O3.E7* A7> &AT7E =7 S.O&AT7E A7> 0 AET K 1 .E AET K STAT;H X2 SPAD* =3 S\S-BED *Z S*F*DT .B7E =7ADT 3E.& *ST =7T. TABF* =O*ST 3.E AFF *7TE=*S =7 =OZAFS VW*E* .B7E K =OZAFS.B7E A7> STAT K DOSTAT =))G *7>=3 *7>=3 ^ elimina notas de fornecimento de lotes "ue este'am estornados F..P AT =OZAFS ^ ler a tabela para checar se e6iste ob'eto E*A> TABF* =O*ST V=TW *\ .B7E K =OZAFS.B7E =3 S\S-BED *Z A7> =O*ST=7ADT K SPAD* >*F*T* =OZAFS deleta registro estornado *7>=3 *7>F..P >*SDE=B* TABF* =OZAFS F=7*S [OF=7WAS =3 [OF=7WAS *Z *=T *7>=3
^ ordenar tabela para facilitar sapscript S.ET =OZAFS B\ V*ES F=37E AET F..P AT =OZAFS =3 =OZAFSF=37E *Z D.7T=7-* *7>=3 ^ Atuali!a dados "nado muda o centro e o fornecedor .7 DWA7J* .3 =OZAFSV*ES .E =OZAFSF=37E =3 [OT=P.O73 7* &.[*: [OV*ES T. =OAD-&D*7TE., [OF=37E T. =OAD-&F=37E, [OS-&OPP& =OAD-& DF*AE =OAD-& ^
Dalcula dados nais com a contabili!acao feita P*E3.E& 3ODAFDO7.TAS ^ atuali!a tabela com os dados calculados P*E3.E& 3OJEA[AOTAB3=& ^ Fimpar as #aria#eis utili!adas no calculo DF*AE: [OS-&OPP&=3 *7>.7 ^ guarda #alores para geracao de ar"ui#o nal [OV*ES K =OZAFSV*ES [OF=37E K =OZAFSF=37E [O&AT7E K =OZAFS&AT7E [OT=P.O73 K =OZAFSAET =3 =OZAFSAET K TABF* =OZA[* V=TW *\ PE-*3F.S K =OZAFS PE-*3F.S ^ 3im da Alteração^
=3 S\S-BED 7* D.7T=7-* *7>=3 =3 =OZA[*[>AT-& 2K [O>T=OA7AF=S* A7> =OZA[*[>AT-& XK [O>TO3=& [OS-&OPP&
G<
ABAP Training [OS-&OPP&=3 ^ Jera tabela para impressao detalhada por material P*E3.E& 3OJEA[AO>*TO&AT *FS*=3 =OZAFSAET K 1 E*A> TABF* =OZA[* V=TW *\ PE-*3F.S K =OZAFS PE-*3F.S
=3 S\S-BED 7* D.7T=7-* *7>=3 =3 =OZA[*[>AT-& 2K [O>T=OA7AF=S* A7> =OZA[*[>AT-& XK [O>TO3=&
^ sumari!a o numero de ocorrencias para um dos tipos de controle [O7-&O73FO& K [O7-&O73FO& 1 ^ contabili!a o 73F e F.T
[OS-&O73FO& K [OS-&O73FO& =OZA[*Z*77NAWF =3 =OZA[*Z*77NAWF X2 1 [OS-&OF.TO& K [OS-&OF.TO& =OZA[*Z*77NAWF *7>=3
^ contabili!a #alor para calculo de nota de processo [OS-&OPP&1O& K [OS-&OPP&1O& =OZAFSF&*7J*=ST [OS-&O73FOAD K [OS-&O73FOAD =OZA[*Z*77NAWF =3 =OZA[*Z*77NAWF X2 1 [OS-&OF.TOAD K [OS-&OF.TOAD =OZA[*Z*77NAWF *7>=3 [OS-&OPP&1OAD K [OS-&OPP&1OAD =OZAFS F&*7J*=ST [O7-&O73FOAD K [O7-&O73FOAD 1 ^ 3im da Alteração ^ *FS* ^ sumari!a o numero de ocorrenciasqpara um dados tipo de controle [O7-&O73FOAD K [O7-&O73FOAD 1 ^ contabili!a 73 e F.T [OS-&O73FOAD K [OS-&O73FOAD =OZA[*Z*77NAWF =3 =OZA[*Z*77NAWF X2 1 [OS-&OF.TOAD K [OS-&OF.TOAD =OZA[*Z*77NAWF *7>=3 ^ contabili!a o #alor para calculo de nota de processo [OS-&OPP&1OAD K [OS-&OPP&1OAD =OZAFS F&*7J*=ST *7>=3 ^ gera tabela para impressao detalhada por material P*E3.E& 3OJEA[AO>*TO&AT *FS*=3 =OZAFSAET K R E*A> TABF* =OZA[* V=TW *\ PE-*3F.S K =OZAFS PE-*3F.S
=3 S\S-BED 7* D.7T=7-* *7>=3
=3 =OZA[*[>AT-& 2K [O>T=OA7AF=S* A7> =OZA[*[>AT-& XK [O>TO3=& =3 =OZA[*[B*V*ET-7J X2 A [OZ*77NAWF K =OZA[*Z*77NAWF ^ 1 *FS* [OZ*77NAWF K =OZA[*Z*77NAWF *7>=3 [OS-&O7PTO& K [OS-&O7PTO& [OZ*77NAWF [OS-&O7PTOAD K [OS-&O7PTOAD [OZ*77NAWF *FS* =3 =OZA[*[B*V*ET-7J X2 A [OZ*77NAWF K =OZA[*Z*77NAWF ^ 1 *FS* [OZ*77NAWF K =OZA[*Z*77NAWF *7>=3 [OS-&O7PTOAD K [OS-&O7PTOAD [OZ*77NAWF *7>=3 *7>=3 *7>F..P &.[*: [OV*ES T. =OAD-&D*7TE., [OF=37E T. =OAD-&F=37E, [OS-&OPP& =OAD-& DF*AE =OAD-& ^ Dalcula dados nais com a contabili!acao feita P*E3.E& 3ODAFDO7.TAS ^ Atuali!a tabela com os dados calculados P*E3.E& 3OJEA[AOTAB3=& *7>3.E& ^^ ^ 3orm 3ODAFDO7.TAS ^^ ^ Dalcula dados nais com a contabili!acao feita ^^ 3.E& 3ODAFDO7.TAS ^ #erica "ual tipo de nota sera calculada ^ calcula nota de fornecimentomes =3 [O7-&O73FO& 2 [ODW*DO73FO& K [OT.TO73FO& K [OS-&O73FO& Y [O7-&O73FO& [OT.TOF.TO& K 1 0 [OS-&OF.TO& Y [O7-&O73FO& 4 *FS* [ODW*DO73FO& K *7>=3 ^ calcula nota de fornecimentoacumulado =3 [O7-&O73FOAD 2
GR
^
ABAP Training [ODW*DO73FOAD K [OT.TO73FOAD K [OS-&O73FOAD Y [O7-&O73FOAD [OT.TOF.TOAD K 1 0 [OS-&OF.TOAD Y [O7-&O73FOAD 4 *FS* [ODW*DO73FOAD K ^ 3im da Alteração ^ *7>=3 ^ calcula nota processomes =3 [OS-&OPP&1O& 2 [OT.TOPP&O& K 0 [OS-&OPP&=3 [OT.TO7PEO& K 1 0 [OT.TOPP&O& Y 1 4 =3 [OT.TO7PEO& X [OT.TO7PEO& K *7>=3 ^ calcula nota processoacumulado =3 [OS-&OPP&1OAD 2 [OT.TOPP&OAD K 0 [OS-&OPP&=3 [OT.TO7PEOAD K 1 0 [OT.TOPP&OAD Y 1 4 =3 [OT.TO7PEOAD X [OT.TO7PEOAD K *7>=3 [OT.TO7PTO& K 1 [OS-&O7PTO& =3 [OT.TO7PTO& 2 1 [OT.TO7PTO& K 1 *7>=3 =3 [OT.TO7PTO& X [OT.TO7PTO& K *7>=3 ^ calcula nota de pontualidade [OT.TO7PTOAD K 1 [OS-&O7PTOAD =3 [OT.TO7PTOAD 2 1 [OT.TO7PTOAD K 1 *7>=3 =3 [OT.TO7PTOAD X [OT.TO7PTOAD K *7>=3 *7>3.E& ^^ ^ 3orm 3OJEA[AOTAB3=& ^^ ^ Jra#a tabela 3inal ^^ 3.E& 3OJEA[AOTAB3=& ^ [erica se 'a e6iste registro gerado para empresaYfornecedor DF*AE: =OTAB3=& E*A> TABF* =OTAB3=& V=TW *\ V*ES K [OV*ES F=37E K [OF=37E =3 S\S-BED 7* =OTAB3=&V*ES K [OV*ES
=OTAB3=&F=37E K [OF=37E =OTAB3=&7DZO& K 1 =OTAB3=&7DZOAD K 1 APP*7> =OTAB3=& *7>=3 ^ [erica "ual tipo de nota foi calculado =3 [OT=P.O73 X2 3Z ^ gra#a nota de fornecimentomes =3 [ODW*DO73FO& K =OTAB3=&73FO& K =OTAB3=&F.TO& K *FS* VE=T* [OT.TO73FO& T. =OTAB3=&73FO& >*D=&AFS E=JWT -ST=3=*> VE=T* [OT.TOF.TO& T. =OTAB3=&F.TO& >*D=&AFS ) E=JWT -ST=3=*> *7>=3 ^ gra#a nota de fornecimento acumulado =3 [ODW*DO73FOAD K =OTAB3=&73FOAD K =OTAB3=&F.TOAD K *FS* VE=T* [OT.TO73FOAD T. =OTAB3=&73FOAD >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TOF.TOAD T. =OTAB3=&F.TOAD >*D=&AFS ) E=JWT-ST=3=*> *7>=3 ^ gra#a #alores para calculo futuro de PP& VE=T* [OS-&OPP&1O& T. =OTAB3=&PP&1O& >*D=&AFS E=JWT-ST=3=*> VE=T* [OS-&OPP&1OAD T. =OTAB3=&PP&1OAD >*D=&AFS E=JWT-ST=3=*> ^ gra#a nota de processo mes =3 [ODW*DO73FO& K =OTAB3=&PP&O& K =OTAB3=&7PEO& K *FS* VE=T* [OT.TOPP&O& T. =OTAB3=&PP&O& >*D=&AFS E=JWT -ST=3=*> VE=T* [OT.TO7PEO& T. =OTAB3=&7PEO& >*D=&AFS E=JWT -ST=3=*> *7>=3 ^ gra#a nota processo acumulado =3 [ODW*DO73FOAD K =OTAB3=&PP&OAD K =OTAB3=&7PEOAD K *FS* VE=T* [OT.TOPP&OAD T. =OTAB3=&PP&OAD >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TO7PEOAD T. =OTAB3=&7PEOAD >*D=&AFS E=JWT-ST=3=*> *7>=3 ^ gra#a nota de pontualidade mes VE=T* [OT.TO7PTO& T. =OTAB3=&7PTO& >*D=&AFS E=JWT -ST=3=*> ^ gra#a nota de pontualidade acumulado
H
ABAP Training VE=T* [OT.TO7PTOAD T. =OTAB3=&7PTOAD >*D=&AFS E=JWT -ST=3=*> *FS*=3 [OT=P.O73 K 3Z ^ gra#a #alores de nota de compromisso de "ualidade mes VE=T* [OT.TO7DZO& T. =OTAB3=&7DZO& >*D=&AFS E=JWT -ST=3=*> ^ gra#a #alores de nota de compromisso de "ualidade acumulado VE=T* [OT.TO7DZOAD T. =OTAB3=&7DZOAD >*D=&AFS E=JWT-ST=3=*> *7>=3 ^ atuali!a tabela com #alores calculados &.>=3\ =OTAB3=& =7>* S\TAB= =3 [OT=P.O73 X2 3Z =OAD-&D*7TE. K =OTAB3=&V*ES =OAD-&F=37E K =OTAB3=&F=37E =OAD-&S-&O7PTO& K =OTAB3=&7PTO& =OAD-&7-&O7PTO& K 1 =OAD-&S-&O7PTOAD K =OTAB3=&7PTOAD =OAD-&7-&O7PTOAD K 1 APP*7> =OAD-& DF*AE =OAD-& *7>=3 *7>3.E& ^^ ^ 3orm 3OS*F*DTO7DZ ^^ ^ Selecao dos dados referente a nota de compromisso com a "ualidade ^^ 3.E& 3OS*F*DTO7DZ ^ seleciona os dados da [="&*F S*F*DT &AV*E F=37-& &AT7E STE&7 Z&7-& .B7E *B*F7 *B*FP 3E.& [=Z&*F =7T. TABF* =O[=Z&*F VW*E* &AV*E =7 S.OV*ES A7> F=37-& =7 S.O3.E7* A7> &AT7E =7 S.O&AT7E A7> STE&7 2K [O>TO=7=D=. A7> STE&7 XK [O>TO3=& A7> 0 Z&AET K 3) .E Z&AET K Z) 4 =3 S\S-BED 7* se não encontrou medida [OT.TO7DZO& K 1 [OT.TO7DZOAD K 1 &.[*: =O[=Z&*F&AV*ES T. =OAD-&D*7TE., =O[=Z&*FF=37-& T. =OAD-&F=37E, 1 T. =OAD-&S-&O*&>=AO&,
1 T. =OAD-&S-&O*&>=AOAD APP*7> =OAD-& DF*AE =OAD-& *=T *7>=3 ^ Procura por notas estornadas S*F*DT .B7E =7ADT 3E.& *ST =7T. TABF* =O*STO7DZ 3.E AFF *7TE=*S =7 =O[=Z&*F VW*E* .B7E K =O[=Z&*F.B7E A7> STAT K =/I ^ *limina notas de fornecimento de lotes "ue este'am estornados F..P AT =O[=Z&*F E*A> TABF* =O*ST V=TW *\ .B7E K =O[=Z&*F.B7E =3 S\S-BED K A7> =O*ST=7ADT K SPAD* ^ *limina registro marcado para delecao >*F*T* =O[=Z&*F *7>=3 *7>F..P ^ [erica se ainda ha algum registro na tabela iO#i"mel >*SDE=B* TABF* =O[=Z&*F F=7*S [OF=7WAS =3 [OF=7WAS *Z [OT.TO7DZO& K 1 [OT.TO7DZOAD K 1 &.[*: =O[=Z&*F&AV*ES T. =OAD-&D*7TE., =O[=Z&*FF=37-& T. =OAD-&F=37E, 1 T. =OAD-&S-&O*&>=AO&, 1 T. =OAD-&S-&O*&>=AOAD APP*7> =OAD-& DF*AE =OAD-& *=T *7>=3 =3 [OF=7WAS 2 se ainda e6iste medida procura pelas notas S*F*DT Z&7-& *E>AT 3E.& [=Z&S& =7T. TABF* =O[=Z&S& 3.E AFF *7TE=*S =7 =O[=Z&*F VW*E* Z&7-& K =O[=Z&*FZ&7-& *7>=3 S.ET =O[=Z&*F B\ &AV*ES F=37-& ^ atribui tipo de nota para gra#acao na tabela nal F..P AT =O[=Z&*F =3 =O[=Z&*F&AV*ES *Z .E =O[=Z&*FF=37-& *Z D.7T=7-* *7>=3 .7 DWA7J* .3 =O[=Z&*F&AV*ES .E =O[=Z&*FF=37-& =3 [OT=P.O73 K 3Z &.[*: [OV*ES T. =OAD-&D*7TE., [OF=37E T. =OAD-&F=37E, [OS-&OATEASO& T. =OAD-&S-&OATEASO&, [OS-&OATEASOAD T. =OAD-&S-&OATEASOAD, [OS-&O*&>=AO& T. =OAD-&S-&O*&>=AO&,
H1
ABAP Training [OS-&O*&>=AOAD T. =OAD-&S-&O*&>=AOAD APP*7> =OAD-& DF*AE =OAD-& ^ chama rotina para calculo na 7DZ P*E3.E& 3ODAFDO7DZ ^ chama rotina para gra#acao da tabela nal P*E3.E& 3OJEA[AOTAB3=& ^ limpa #aria#eis DF*AE: [OS-&OATEASO&, [OS-&OATEASOAD, [OS-&O*&>=AO&, [OS-&O*&>=AOAD, [OT.TO7.TASO&, [OT.TO7.TASOAD, [OT.TO7DZO&, [OT.TO7DZOAD *7>=3 *7>.7 ^ guarda #alores para geracao de ar"ui#o nal [OV*ES K =O[=Z&*F&AV*ES [OF=37E K =O[=Z&*FF=37-& [OT=P.O73 K 3Z E*A> TABF* =O[=Z&S& V=TW *\ Z&7-& K =O[=Z&*FZ&7-& =3 S\S-BED *Z =3 =O[=Z&S&*E>AT 2 =O[=Z&*FSTE&7 nota Z& atrasada =3 =O[=Z&*FSTE&7 2K [O>T=OA7AF=S* A7> =O[=Z&*FSTE&7 XK [O>TO3=& [OS-&OATEASO& K [OS-&OATEASO& 1 [OS-&OATEASOAD K [OS-&OATEASOAD 1 *FS* [OS-&OATEASOAD K [OS-&OATEASOAD 1 *7>=3 *FS* =3 =O[=Z&*FSTE&7 2K [O>T=OA7AF=S* A7> =O[=Z&*FSTE&7 XK [O>TO3=& [OS-&O*&>=AO& K [OS-&O*&>=AO& 1 [OS-&O*&>=AOAD K [OS-&O*&>=AOAD 1 *FS* [OS-&O*&>=AOAD K [OS-&O*&>=AOAD 1 *7>=3 *7>=3 *FS* =3 =O[=Z&*FSTE&7 2K [O>T=OA7AF=S* A7> =O[=Z&*FSTE&7 XK [O>TO3=& [OS-&OATEASO& K [OS-&OATEASO& 1 [OS-&OATEASOAD K [OS-&OATEASOAD 1 *FS* [OS-&OATEASOAD K [OS-&OATEASOAD 1 *7>=3 *7>=3 *7>F..P &.[*: =O[=Z&*F&AV*ES T. =OAD-&D*7TE., =O[=Z&*FF=37-& T. =OAD-&F=37E, [OS-&OATEASO& T. =OAD-&S-&OATEASO&, [OS-&OATEASOAD T. =OAD-&S-&OATEASOAD, [OS-&O*&>=AO& T. =OAD-&S-&O*&>=AO&, [OS-&O*&>=AOAD T. =OAD-&S-&O*&>=AOAD APP*7> =OAD-& DF*AE =OAD-& ^ chama rotina para calculo da 7DZ P*E3.E& 3ODAFDO7DZ ^ chama rotina para gra#acao da tabela nal P*E3.E& 3OJEA[AOTAB3=&
*7>3.E& ^^ ^ 3orm 3ODAFDO7DZ ^^ ^ rotina para calculo de 7DZ ^^ 3.E& 3ODAFDO7DZ ^ calculo do mes [OT.TO7.TASO& K [OS-&O*&>=AO& [OS-&OATEASO& =3 [OT.TO7.TASO& 2 [OT.TO7DZO& K 0 [OS-&O*&>=AO& Y [OT.TO7.TASO& 4 ^ 1 *FS* [OT.TO7DZO& K 1 *7>=3 ^ calculo do acumulado [OT.TO7.TASOAD K [OS-&O*&>=AOAD [OS-&OATEASOAD =3 [OT.TO7.TASOAD 2 [OT.TO7DZOAD K 0 [OS-&O*&>=AOAD Y [OT.TO7.TASOAD 4 ^ 1 *FS* [OT.TO7DZOAD K 1 *7>=3 *7>3.E& ^^ ^ 3orm 3OS*F*DTO7AS ^^ ^ 3orm para selecao dos dados referentea a nota de a#aliacao de sistem ^^ 3.E& 3OS*F*DTO7AS
S*F*DT F=37E 7A&*1 SPEAS STEAS P3ADW PSTFN .ET1 E*J=. FA7>1 3E.& F3A1 =7T. TABF* =OF3A1 VW*E* F=37E =7 S.O3.E7*
*7>3.E& ^^ ^ 3orm 3OS*F*DTO7Z3 ^^ ^ 3orm para selecao dos dados referente a nota de "ualidad de forn ^^ 3.E& 3OS*F*DTO7Z3 S*F*DT S=7JF* EJ*V 3E.& T1G/D =7T. [O3AT.EO73F VW*E* *.EJ K 1 A7>
H)
ABAP Training WE=T K ) A7> TE=T K 1 S*F*DT S=7JF* EJ*V 3E.& T1G/D =7T. [O3AT.EO7PE VW*E* *.EJ K 1 A7> WE=T K ) A7> TE=T K G S*F*DT S=7JF* EJ*V 3E.& T1G/D =7T. [O3AT.EO7DZ VW*E* *.EJ K 1 A7> WE=T K ) A7> TE=T K ) ^ total de fatores de ponderacao [OT.TOP.7> K [O3AT.EO73F [O3AT.EO7PE [O3AT.EO7DZ ^ loop na tabela de notas anterior pY atuali!acao do campo de n"f F..P AT =OTAB3=& ^ Se 73F e 7PE esti#erem BEA7D.S, passar BEA7D. ^ =3 =OTAB3=&73FO& K A7> =OTAB3=&7PEO& K =OTAB3=&7Z3O& K
3E.& T1V =7T. TABF* =OT1V 3.E AFF *7TE=*S =7 =OTAB3=& VW*E* V*ES K =OTAB3=&V*ES S*F*DT S=7JF* V*ES 7A&*1 STEAS P3ADW PSTFN .ET1 E*J=. FA7>1 3E.& 7A1 =7T. =OE*&*T VW*E* -77E K POE*&*T EA34
7 remetente 0"uem emite o
^ o idioma pelo "ual o nome do pa8s de#e ser procurado depende do ^ pa8s do remetente =3 =OE*&*TFA7>1 *Z DOBE Se remetente for brasileiro [O=>=.&A K DOP portugus *FS*=3 =OE*&*TFA7>1 *Z DOAEJ Se remetente for argentino [O=>=.&A K DO*SP espanhol *7>=3 Se remetente for brasileiro S*F*DT FA7>1 FA7> 3E.& THT =7T. TABF* =OPA=S VW*E* SPEAS K [O=>=.&A
*FS* =3 [OT.TOP.7> X2 mes [OT.TO7Z3O& K 0 0 =OTAB3=&73FO& ^ [O3AT.EO73F 4 0 =OTAB3=&7PEO& ^ [O3AT.EO7PE 4 0 =OTAB3=&7DZO& ^ [O3AT.EO7DZ 4 4 Y [OT.TOP.7>
VE=T* [OT.TO7Z3O& T. =OTAB3=&7Z3O& >*D=&AFS *7>=3 *7>=3 =3 =OTAB3=&73FOAD K A7> =OTAB3=&7PEOAD K =OTAB3=&7Z3OAD K *FS* =3 [OT.TOP.7> X2 [OT.TO7Z3OAD K 0 0 =OTAB3=&73FOAD ^ [O3AT.EO73F 4 0 =OTAB3=&7PEOAD ^ [O3AT.EO7PE 4 0 =OTAB3=&7DZOAD ^ [O3AT.EO7DZ 4 4 Y [OT.TOP.7>
^^ ^ 3orm 3OJEA[AO>*TO&AT ^^ ^ Jera impressao detalhada por material ^^ 3.E& 3OJEA[AO>*TO&AT
VE=T* [OT.TO7Z3OAD T. =OTAB3=&7Z3OAD >*D=&AFS *7>=3 *7>=3 ^ Atuali!a tabela &.>=3\ =OTAB3=& *7>F..P
S*F*DT V*ES 7A&*1 SPEAS STEAS P3ADW PSTFN .ET1 E*J=. FA7>1
*7>3.E&
DF*AE: =O>*TO&AT =O>*TO&ATV*ES K [OV*ES =O>*TO&ATF=37E K [OF=37E =O>*TO&AT&AT7E K [O&AT7E =O>*TO&AT>ATA K =OZA[*[>AT-& =O>*TO&ATT=P.O73 K [OT=P.O73 =3 [OT=P.O73 K *TO&ATF&*7J*SDW K =OZAFSF&*7J*SDW *FS*=3 [OT=P.O73 K 1 =O>*TO&ATZ*77NAWF K =OZA[*Z*77NAWF =O>*TO&ATF&*7J*=ST K =OZAFSF&*7J*=ST *7>=3 APP*7> =O>*TO&AT *7>3.E& ^^ ^ 3orm 3OPE=7TOE*P.ET ^^ ^ imprime o report
H;
ABAP Training ^^ 3.E& 3OPE=7TOE*P.ET >ATA: [O3.E7*D F=* ZAFSF=37E DF*AE: [OT.TO73FO&, [OT.TO73FOAD, [OT.TO7PEO&, [OT.TO7PEOAD, [OT.TO7DZO&, [OT.TO7DZOAD, [OT.TO7Z3O&, [OT.TO7Z3OAD, [OT.TO7PTO&, [OT.TO7PTOAD, [OT.TO7ASO&, [OT.TOPP&O&, [OT.TOPP&OAD, [OT.TOF.TO&, [OT.TOF.TOAD >*SDE=B* TABF* =OTAB3=& F=7*S [OF=7WAS =3 [OF=7WAS *Z &*SSAJ* =<; V=TW 7ão há dados para os critérios de seleção informados *=T *7>=3 S.ET =OTAB3=& B\ F=37E V*ES F..P AT =OTAB3=& VW*E* V*ES =7 S.OD*7T E*A> TABF* =OT1V V=TW *\ V*ES K =OTAB3=&V*ES E*A> TABF* =OF3A1 V=TW *\ F=37E K =OTAB3=&F=37E .7 DWA7J* .3 =OTAB3=&F=37E
=3 [OPE=&O[*N K 3 =3 S.OD*7T *Z E*A> TABF* =OT.TO3.E7*D V=TW *\ F=37E K [O3.E7*D P*E3.E& 3OPE=7TOT.TAF *7>=3 *7>=3 E*A> TABF* =O3.E7*D V=TW *\ F=37E K =OTAB3=&F=37E 3.E&AT D.F.E D.FO7.E&AF =7T*7S=3=*> .7 VE=T*: Y) =OTAB3=&F=37E, 1H =OF3A17A&*1, I 7AS K , =O3.E7*D7AS, 1/ 3.E&AT D.F.E D.FO7.E&AF [OPE=&O[*N K 3
DF*AE: [OT.TO73FO&, [OT.TO73FOAD, [OT.TO7PEO&, [OT.TO7PEOAD, [OT.TO7DZO&, [OT.TO7DZOAD, [OT.TO7Z3O&, [OT.TO7Z3OAD, [OT.TO7PTO&, [OT.TO7PTOAD, [OT.TO7ASO&, [OT.TOPP&O&, [OT.TOPP&OAD, [OT.TOF.TO&, [OT.TOF.TOAD
^ Busca #alores de .B PP& e F.T* E*A> TABF* =O3.E7*D V=TW *\ F=37E K =OTAB3=&F=37E *7>.7 ^ =mprimir descrição de Dentro .7 DWA7J* .3 =OTAB3=&V*ES .E =OTAB3=&F=37E 3.E&AT D.F.E D.FO7.E&AF =7T*7S=3=*> .7 VE=T*: YH =OTAB3=&V*ES, 1H =OT1V7A&*, 1/ *7>.7
3.E&AT D.F.E D.FO7.E&AF VE=T*: YH PO&*S, ;) =OTAB3=&73FO&, G/ =OTAB3=&7PEO&, I) =OTAB3=&7DZO&, // =OTAB3=&7Z3O&, R) =OTAB3=&7PTO&, 1/ =OTAB3=&PP&O& W.TSP.T .7 VE=T*: 11R =O3.E7*DPP&O.B VE=T*: 1;/ =OTAB3=&F.TO& VE=T*: 1G/ =O3.E7*DF.TO.B, 1/ W=>*: =OTAB3=&F=37E, =OTAB3=&V*ES 3.E&AT D.F.E D.FO7.E&AF 3.E&AT D.F.E D.FO7.E&AF VE=T*: YH Acum, POP*E=.>, &es0es4, ;) =OTAB3=&73FOAD, G/ =OTAB3=&7PEOAD, I) =OTAB3=&7DZOAD, // =OTAB3=&7Z3OAD, R) =OTAB3=&7PTOAD, 1/ =OTAB3=&PP&OAD W.TSP.T .7, 1;/ =OTAB3=&F.TOAD, 1/ W=>*: =OTAB3=&F=37E, =OTAB3=&V*ES [O3.E7*D K =OTAB3=&F=37E AT FAST E*A> TABF* =OT.TO3.E7*D V=TW *\ F=37E K [O3.E7*D =3 S.OD*7T *Z P*E3.E& 3OPE=7TOT.TAF *7>=3 *7>AT 3.E&AT D.F.E D.FO7.E&AF *7>F..P =3 S\S-BED 7* &*SSAJ* =<; V=TW 7ão há dados para os critérios de seleção informados *=T *7>=3 -F=7* =3 S.OD*7T *Z A7> S.O3.E7* *Z A7> S.O&AT7E *Z P*E3.E& 3OPE=7TOT.TAFO3=7AF P*E3.E& 3OPE=7TOT.TAFOAD-& *FS*=3 S.OD*7T 7* A7> S.O3.E7* *Z A7> S.O&AT7E *Z P*E3.E& 3OPE=7TOT.TAFO3=7AF *7>=3 *7>3.E& ^^ ^ 3orm 3OPE=7TOE*PO>*T ^^ ^ =mprime relatorio detalhado por item ^^
HG
ABAP Training 3.E& 3OPE=7TOE*PO>*T F..P AT =OTABO>*TO3=& =3 =OTABO>*TO3=&F=37E K =OTAB3=&F=37E A7> =OTABO>*TO3=&V*ES K =OTAB3=&V*ES DF*AE: =O&AT, =O3.E7*DO&AT E*A> TABF* =O&AT V=TW *\ &AT7E K =OTABO>*TO3=& &AT7E E*A> TABF* =O3.E7*DO&AT V=TW *\ F=37E K =OTABO>*TO3=&F=37E &AT7E K =OTABO>*TO3=&&AT7E 3.E&AT D.F.E D.FO7.E&AF VE=T*: Y) =OTABO>*TO3=&&AT7E, 1/ =O&AT&AT VE=T*: HH =OTABO>*TO3=&PP&O&, / =OTABO>*TO3=&F.TO& VE=T*: *TO3=&PP&OAD, R/ =OTABO>*TO3=&F.TOAD, 11; =O3.E7*DO&ATPP&O.B, 1;; =O3.E7*DO&ATF.TO.B, 1/ *7>=3 *7>F..P -F=7* *7>3.E& ^^ ^ 3orm fOpreparaOsapscript ^^ ^ Prepara SAPSDE=PT para impressão ^^ 3.E& 3OPE*PAEAOSAPSDE=PT >ATA: [O3FAJO=&PE*S014 T\P* D, [OPE=&O[*NOSAPSDE=PT T\P* D [AF-* S ^ >ene #alores de linhas 6 "uebra de página DOF=7WA K 0 IG ^ 1)/ Y ; 4 IG linhas ^ mm por linha DOF=7WA1 K 0 I1 ^ 1)/ Y ; 4 I1 linhas ^ mm por linha ^ Dontador de n9mero de linhas ^ <*SDE=B* TABF* =OTAB3=& F=7*S [OF=7WAS =3 [OF=7WAS K &*SSAJ* =<; V=TW 7ão há dados para os critérios de seleção informados *=T *7>=3 [O3FAJO=&PE*S K DOS=& [OPE=&O[*N K DOS=& S.ET =OTAB3=& B\ F=37E ^ =mprime SAPSDE=PT F..P AT =OTAB3=&
E*A> TABF* =OT.TO3.E7*D V=TW *\ F=37E K =OTAB3=& F=37E =3 =OT.TO3.E7*DPP&O& K D.7T=7-* *7>=3 =3 [O3FAJO=&PE*S K DOS=&014 ^ Abre form para impressão de sapscript P*E3.E& 3O.P*7O3.E& [O3FAJO=&PE*S K DO7A. *7>=3 .7 DWA7J* .3 =OTAB3=&F=37E =3 [OPE=&O[*N X2 DOS=&014 ^ Eesumo dos 8ndices de PP& de linha e k re'eição de Fote no Eecebimento P*E3.E& 3OF..POE*S-&.O=7>=D* [OT=&* K <=3 *7>.7 DF*AE: =OF3A1, =OT1V ^ >escrição do 3ornecedor e Dentro E*A> TABF* =OF3A1 V=TW *\ F=37E K =OTAB3=&F=37E E*A> TABF* =OT1V V=TW *\ V*ES K =OTAB3=&V*ES E*A> TABF* =OT.TO3.E7*D V=TW *\ F=37E K =OTAB3=& F=37E E*A> TABF* =O3.E7*D V=TW *\ F=37E K =OTAB3=&F=37E ^ =nicia formulário =3 [OPE=&O[*NOSAPSDE=PT K DOS=&014 P*E3.E& 3OSTAETO3.E& *7>=3 ^ >ata de Eeferncia Y Acumulado de:
P*E3.E& 3O*T*7S.O>ATA -S=7J [O>TO3=&G0)4 [O>TO3=&)0)4 DWA7J=7J NSAPSDE=P)>ATAOE*3
P*E3.E& 3O*T*7S.O>ATA -S=7J [O>TO=7=D=.G0)4 [O>TO=7=D=.)0)4 DWA7J=7J NSAPSDE=P)AD-&O>T1 P*E3.E& 3O*T*7S.O>ATA -S=7J [O>TO3=&G0)4 [O>TO3=&)0)4 DWA7J=7J NSAPSDE=P)AD-&O>T) ^ >ados do >estinário NSAPSDE=P)7A&*3 K =OF3A17A&*1 NSAPSDE=P)F=37E K =OTAB3=&F=37E NSAPSDE=P)>*STO7A&* K =OF3A17A&*1 NSAPSDE=P)>*STOE-A K =OF3A1STEAS NSAPSDE=P)>*STODA=A K =OF3A1P3ADW NSAPSDE=P)>*STOD*P K =OF3A1PSTFN NSAPSDE=P)>*STOD=T\ K =OF3A1.ET1 NSAPSDE=P)>*STOE*J K =OF3A1E*J=. E*A> TABF* =OPA=S V=TW *\ FA7>1 K =OF3A1FA7>1 NSAPSDE=P)>*STOPA=S K =OPA=SFA7>
^ >ados do Eemetente NSAPSDE=P)7A&*D K =OT1V7A&* NSAPSDE=P)E*&O7A&* K =OE*&*T7A&* NSAPSDE=P)E*&OE-A K =OE*&*TSTEAS NSAPSDE=P)E*&ODA=A K =OE*&*TP3ADW NSAPSDE=P)E*&OD*P K =OE*&*TPSTFN
HH
ABAP Training NSAPSDE=P)E*&OD=T\ K =OE*&*T.ET1 NSAPSDE=P)E*&OE*J K =OE*&*TE*J=. E*A> TABF* =OPA=S V=TW *\ FA7>1 K =OE*&*TFA7>1 NSAPSDE=P)E*&OPA=S K =OPA=SFA7> =3 =O3.E7*D7AS K ^ Se o pa8s do Eemetente for ^ argentina e o pa8s do fornecedor for argentina, imprimir o relatório ^ espanhol Se ambos forem Brasil, imprimir em portugus Para os ^ demais casos, imprimir em ingls
P*E3.E& 3OVE=T*OE*S-&.O-7=>A>*S [OPE=&O[*NOSAPSDE=PT K DO7A.014 *7>=3 ^ Eesumo por -nidade NSAPSDE=P)7Z3O& K =OTAB3=&7Z3O& NSAPSDE=P)7Z3OAD K =OTAB3=&7Z3OAD NSAPSDE=P)73FO& K =OTAB3=&73FO& NSAPSDE=P)73FOAD K =OTAB3=&73FOAD NSAPSDE=P)7PEO& K =OTAB3=&7PEO& NSAPSDE=P)7PEOAD K =OTAB3=&7PEOAD NSAPSDE=P)7DZO& K =OTAB3=&7DZO& NSAPSDE=P)7DZOAD K =OTAB3=&7DZOAD NSAPSDE=P)7PTO& K =OTAB3=&7PTO&1 NSAPSDE=P)7PTOAD K =OTAB3=&7PTOAD1
=3 =OF3A1FA7>1 *Z DOBE A7> =OE*&*TFA7>1 *Z DOBE NSAPSDE=P)A[AF=A K DO7A. *FS* NSAPSDE=P)A[AF=A K DO7. *7>=3 *FS* =3 =OF3A1FA7>1 *Z DOBE A7> =OE*&*TFA7>1 *Z DOBE NSAPSDE=P)A[AF=A K DOS=& *FS*=3 =OF3A1FA7>1 *Z DOAEJ A7> =OE*&*TFA7>1 *Z DOAEJ NSAPSDE=P)A[AF=A K DOS= *FS* NSAPSDE=P)A[AF=A K DO\*S *7>=3 *7>=3 =3 =OT.TO3.E7*D73FO& K =3 =OF3A1FA7>1 *Z DOBE A7> =OE*&*TFA7>1 *Z DOBE NSAPSDE=P)AT=[. K DO7A. *FS* NSAPSDE=P)AT=[. K DO7. *7>=3 *FS* =3 =OF3A1FA7>1 *Z DOBE A7> =OE*&*TFA7>1 *Z DOBE NSAPSDE=P)AT=[. K DOS=& *FS*=3 =OF3A1FA7>1 *Z DOAEJ A7> =OE*&*TFA7>1 *Z DOAEJ NSAPSDE=P)AT=[. K DOS= *FS* NSAPSDE=P)AT=[. K DO\*S *7>=3 *7>=3
^ [erica se está ati#o para o determinado fornecedor: =3 =OTAB3=&73FO& K ^ Se o pa8s do Eemetente for ^ argentina e o pa8s do fornecedor for argentina, imprimir o relatório ^ espanhol Se ambos forem Brasil, imprimir em portugus Para os ^ demais casos, imprimir em ingls =3 =OF3A1FA7>1 *Z DOBE A7> =OE*&*TFA7>1 *Z DOBE NSAPSDE=P)AT=[. K DO7A. *FS* NSAPSDE=P)AT=[. K DO7. *7>=3 *FS* =3 =OF3A1FA7>1 *Z DOBE A7> =OE*&*TFA7>1 *Z DOBE NSAPSDE=P)AT=[. K DOS=& *FS*=3 =OF3A1FA7>1 *Z DOAEJ A7> =OE*&*TFA7>1 *Z DOAEJ NSAPSDE=P)AT=[. K DOS= *FS* NSAPSDE=P)AT=[. K DO\*S *7>=3 *7>=3 =3 [OPE=&O[*N K DOS=&014 ^ =mpressão do resumo por -nidades P*E3.E& 3OVE=T*OE*S-&.OP.EO-7=>A>* [OPE=&O[*N K DO7A. *FS*=3 [OT=&* 2 DOF=7WA1 ^ =mpressão do resumo por -nidades P*E3.E& 3OVE=T*OE*S-&.OP.EO-7=>A>* [OT=&* K 0 1G ^ 1)/ Y ; 4 *7>=3
^ =guala todos os campos da tabela de resumo de unidade para a estrutura NSAPSDE=P)PP&O& K =OT.TO3.E7*DPP&O& NSAPSDE=P)PP&OAD K =OT.TO3.E7*DPP&OAD NSAPSDE=P)7Z3O&OT K =OT.TO3.E7*D7Z3O& NSAPSDE=P)7Z3OADOT K =OT.TO3.E7*D7Z3OAD NSAPSDE=P)7ASO&OT K =O3.E7*D7AS NSAPSDE=P)7PTOADOT K =OT.TO3.E7*D7PTOAD1 NSAPSDE=P)7PTO&OT K =OT.TO3.E7*D7PTO&1 NSAPSDE=P)73FO&OT K =OT.TO3.E7*D73FO& NSAPSDE=P)73FOADOT K =OT.TO3.E7*D73FOAD NSAPSDE=P)7PEO&OT K =OT.TO3.E7*D7PEO& NSAPSDE=P)7PEOADOT K =OT.TO3.E7*D7PEOAD NSAPSDE=P)7DZO&OT K =OT.TO3.E7*D7DZO& NSAPSDE=P)7DZOADOT K =OT.TO3.E7*D7DZOAD
^ Atuali!a contador de linhas NSAPSDE=P)D.7T K [OT=&*
^ =mpressão do resumo de todas as -nidades =3 [OPE=&O[*NOSAPSDE=PT K DOS=&014
^ Dhama 3.E& de impressão de detalhe Eesumo por -nidade P*E3.E& 3OVE=T*O>*TOE*S-&.OP.EO-7=>A>* ^ Jra#a dados para resumo de 8ndice de PP& P*E3.E& 3OJEA[AOE*SO=7>=D* *7>F..P =3 [OPE=&O[*N X2 DOS=&014 ^ =mprime 9ltimo fornecedor cadastrado P*E3.E& 3OF..POE*S-&.O=7>=D* *7>=3 =3 [O3FAJO=&PE*S K DOS=&014 &*SSAJ* =<; V=TW 7ão há dados para os critérios de seleção informados *FS*
HI
ABAP Training ^ *ncerra a impressão #ia SAPSDE=PT DAFF 3-7DT=.7 DF.S*O3.E& *D*PT=.7S -7.P*7*> K 1 .TW*ES K ) *7>=3 *7>3.E& ^^ ^ 3orm fODAFDO>*TO&AT ^^ ^ S-&AE=NA [AF.E*S P.E &AT*E=AF ^^ 3.E& 3ODAFDO>*TO&AT DF*AE: [OS-&OPP&*TO&AT B\ V*ES F=37E &AT7E T=P.O73 F..P AT =O>*TO&AT .7 DWA7J* .3 =O>*TO&ATV*ES .E =O>*TO&ATF=37E .E =O>*TO&AT&AT7E =3 [OT=P.O73 7* P*E3.E& 3OJEA[AO>*TO3=&
DF*AE: [OS-&OPP&=3
*7>.7 ^ guarda #alores para geracao de ar"ui#o nal [OV*ES K =O>*TO&ATV*ES [OF=37E K =O>*TO&ATF=37E [O&AT7E K =O>*TO&AT&AT7E [OT=P.O73 K =O>*TO&ATT=P.O73 =3 =O>*TO&ATT=P.O73 K *TO&AT>ATA 2K [O>T=OA7AF=S* A7> =O>*TO&AT>ATA XK [O>TO3=& [OS-&OPP&*TO&AT F&*7J*SDW [OS-&OPP&*TO&AT F&*7J*SDW *FS* [OS-&OPP&*TO&AT F&*7J*SDW *7>=3 *FS*=3 =O>*TO&ATT=P.O73 K 1 =3 =O>*TO&AT>ATA 2K [O>T=OA7AF=S* A7> =O>*TO&AT>ATA XK [O>TO3=& ^ sumari!a o numero de ocorrencias para um dado tipo de controle [O7-&O73FO& K [O7-&O73FO& 1
^ contabili!a 73F e F.T [OS-&O73FO& K [OS-&O73FO& =O>*TO&ATZ*77NAWF =3 =O>*TO&ATZ*77NAWF X2 1 [OS-&OF.TO& K [OS-&OF.TO& =O>*TO&ATZ*77NAWF *7>=3 [OS-&OPP&1O& K [OS-&OPP&1O& =O>*TO&AT F&*7J*=ST [O7-&O73FOAD K [O7-&O73FOAD 1 [OS-&O73FOAD K [OS-&O73FOAD =O>*TO&ATZ*77NAWF =3 =O>*TO&ATZ*77NAWF X2 1 [OS-&OF.TOAD K [OS-&OF.TOAD =O>*TO&AT Z*77NAWF *7>=3 [OS-&OPP&1OAD K [OS-&OPP&1OAD =O>*TO&AT F&*7J*=ST *FS* ^ sumari!a o numero de ocorrencias pára um dado tipo de controle [O7-&O73FOAD K [O7-&O73FOAD 1 ^ contabili!a 73F e F.T [OS-&O73FOAD K [OS-&O73FOAD =O>*TO&AT Z*77NAWF =3 =O>*TO&ATZ*77NAWF X2 1 [OS-&OF.TOAD K [OS-&OF.TOAD =O>*TO&AT Z*77NAWF *7>=3 ^ contabili!a #alor para calculo de nota de processo [OS-&OPP&1OAD K [OS-&OPP&1OAD =O>*TO&AT F&*7J*=ST *7>=3 *7>=3 *7>F..P ^ Jra#a dados do 9ltimo registro P*E3.E& 3OJEA[AO>*TO3=& DF*AE: [OS-&OPP&3.E& ^^ ^ 3orm fOgra#aOdetOm ^^ ^ Jra#a tabela nal de detalhes de itens ^^ 3.E& 3OJEA[AO>*TO3=& DF*AE: =OTABO>*TO3=& E*A> TABF* =OTABO>*TO3=& V=TW *\ V*ES K [OV*ES F=37E K [OF=37E &AT7E K [O&AT7E =3 S\S-BED X2 =OTABO>*TO3=&V*ES K [OV*ES =OTABO>*TO3=&F=37E K [OF=37E =OTABO>*TO3=&&AT7E K [O&AT7E APP*7> =OTABO>*TO3=& *7>=3
H/
ABAP Training ^ gra#a nota de fornecimento mesOacumulado =3 [O7-&O73FO& 2 [ODW*DO73FO& K [OT.TOF.TO& K 1 0 [OS-&OF.TO& Y [O7-&O73FO& 4 *FS* [ODW*DO73FO& K *7>=3 ^ gra#a nota de fornecimento mes Y acum =3 [O7-&O73FOAD 2 [ODW*DO73FOAD K [OT.TOF.TOAD K 1 0 [OS-&OF.TOAD Y [O7-&O73FOAD 4 *FS* [ODW*DO73FOAD K *7>=3
^^ ^ =mprime total do rel -& ^^ 3.E& 3OPE=7TOT.TAF 3.E&AT D.F.E D.FOT.TAF VE=T*: YH Acum ms &TB , ;) =OT.TO3.E7*D73FO&, G/ =OT.TO3.E7*D7PEO&, I) =OT.TO3.E7*D7DZO&, // =OT.TO3.E7*D7Z3O&, R) =OT.TO3.E7*D7PTO&, 1/ =OT.TO3.E7*DPP&O&, 1;/ =OT.TO3.E7*DF.TO&, 1/
^ calcula nota de processo mes =3 [OS-&OPP&1O& 2 [OT.TOPP&O& K 0 [OS-&OPP&=3
VE=T*: YH Acum &TB0 7.JAP, POP*E=.>, meses4, ;) =OT.TO3.E7*D73FOAD, G/ =OT.TO3.E7*D7PEOAD, I) =OT.TO3.E7*D7DZOAD, // =OT.TO3.E7*D7Z3OAD, R) =OT.TO3.E7*D7PTOAD, 1/ =OT.TO3.E7*DPP&OAD, 1;/ =OT.TO3.E7*DF.TOAD, 1/
^ calcula nota de processo acum =3 [OS-&OPP&1OAD 2 [OT.TOPP&OAD K 0 [OS-&OPP&=3 ^ gra#a nota processo mes Y ac =3 [ODW*DO73FOAD K =OTABO>*TO3=&PP&O& K =OTABO>*TO3=&PP&OAD K =OTABO>*TO3=&F.TO& K =OTABO>*TO3=&F.TOAD K *FS* VE=T* [OT.TOF.TOAD T. =OTABO>*TO3=&F.TOAD >*D=&AFS ) E=JWT-ST=3=*> VE=T* [OT.TOF.TO& T. =OTABO>*TO3=&F.TO& >*D=&AFS ) E=JWT-ST=3=*> VE=T* [OT.TOPP&O& T. =OTABO>*TO3=&PP&O& >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TOPP&OAD T. =OTABO>*TO3=&PP&OAD >*D=&AFS E=JWT-ST=3=*> *7>=3 &.>=3\ =OTABO>*TO3=& =7>* S\TAB= *7>3.E& ^^ ^ 3orm fOachaOdescricoes ^^ ^ Jra#a tabela nal de detalhes de itens ^^ 3.E& 3OADWAO>*SDE=D.*S
S*F*DT &AT7E &AT 3E.& &AT =7T. TABF* =O&AT 3.E AFF *7TE=*S =7 =OTABO>*TO3=& VW*E* &AT7E K =OTABO>*TO3=&&AT7E
*7>3.E& ^^ ^ 3orm fOprintOtotal
3.E&AT D.F.E D.FO7.E&AF *7>3.E& ^`^ ^` 3orm 3O.P*7O3.E& ^`^ ^ Abre o fórmulário para impressão #ia SAPSDE=PT ^^ 3.E& 3O.P*7O3.E& >ATA: [O>=AF.J T\P* D [AF-* =TDP.T>>*ST K PO=&PE* =3 POBATDW 7* =TDP.T>=&&*> K =TDP.T>7*V=> K [O>=AF.J K *7>=3 ^ Abre o fórmulário para impressão #ia SAPSDE=PT DAFF 3-7DT=.7 .P*7O3.E& *P.ET=7J >*[=D* K PE=7T*E 3.E& K NOA[AFO3.E7*D FA7J-AJ* K S\FA7J.PT=.7S K =TDP. >=AF.J K [O>=AF.J *7>3.E& 3O.P*7O3.E& ^`^ ^` 3orm 3OVE=T*OE*S-&.O-7=>A>*S ^`^ ^ Dhama o elemento de te6to E*S-&.OT.>ASOAT=[=>A>*S ^^ 3.E& 3OVE=T*OE*S-&.O-7=>A>*S ^ Dhama o elemento de te6to E*S-&.OT.>ASOAT=[=>A>*S
DAFF 3-7DT=.7 VE=T*O3.E& *P.ET=7J *F*&*7T K E*S-&.OT.>ASO-7=>A>*S
H<
ABAP Training V=7>.V *7>3.E&
K &A=7 3OVE=T*OE*S-&.O-7=>A>*S
^`^ ^` 3orm 3OVE=T*OE*S-&.OP.EO-7=>A>* ^`^ ^ Dhama o elemento de te6to E*S-&.OP.EO-7=>A>* ^^ 3.E& 3OVE=T*OE*S-&.OP.EO-7=>A>* ^ Dhama o elemento de te6to E*S-&.OP.EO-7=>A>* ^ "ue contém o cabeçalho do E*S-&.OP.EO-7=>A>* DAFF 3-7DT=.7 VE=T*O3.E& *P.ET=7J *F*&*7T K E*S-&.OP.EO-7=>A>* V=7>.V K &A=7 *7>3.E&
3OVE=T*OE*S-&.OP.EO-7=>A>*
^`^ ^` 3orm 3OVE=T*O>*TOE*S-&.OP.EO-7=>A>* ^`^ ^ Dhama o elemento de te6to >*TAFW*OE*S-&.OP.EO-7=>A>*, "ue contém os ^ dados do E*S-&.OP.EO-7=>A>* ^^ 3.E& 3OVE=T*O>*TOE*S-&.OP.EO-7=>A>* ^ Dhama o elemento de te6to >*TAFW*OE*S-&.OP.EO-7=>A>*, "ue contém os ^ dados do E*S-&.OP.EO-7=>A>* DAFF 3-7DT=.7 VE=T*O3.E& *P.ET=7J *F*&*7T K >*TAFW*OE*S-&.OP.EO-7=>A>* V=7>.V K &A=7 [OT=&* K [OT=&* 0 1)/ Y 1 4 acrescenta ; linhas Q origem NSAPSDE=P)D.7T K [OT=&* *7>3.E& 3OVE=T*O>*TOE*S-&.OP.EO-7=>A>* ^`^ ^` 3orm 3OVE=T*OE*S-&.O=7>=D* ^`^ ^ Dhama o elemento de te6to E*S-&.O=7>=D*SOPP& ^^ 3.E& 3OVE=T*OE*S-&.O=7>=D* ^ Dhama o elemento de te6to E*S-&.O=7>=D*SOPP& DAFF 3-7DT=.7 VE=T*O3.E& *P.ET=7J *F*&*7T K E*S-&.O=7>=D*SOPP& V=7>.V K &A=7 [OT=&* K [OT=&* 0 1)/ Y /H 4 P-FA G F=7WAS NSAPSDE=P)D.7T K [OT=&* *7>3.E&
3OVE=T*OE*S-&.O=7>=D*
^`^ ^` 3orm 3OVE=T*O>*TOE*S-&.O=7>=D* ^`^ ^ Dhama o elemento de te6to >*TAFW*OE*S-&.O=7>=D*SOPP&, "ue contém os ^ dados do E*S-&.O=7>=D*SOPP& ^^
3.E& 3OVE=T*O>*TOE*S-&.O=7>=D* ^ Dhama o elemento de te6to >*TAFW*OE*S-&.O=7>=D*SOPP&, "ue contém os ^ dados do E*S-&.O=7>=D*SOPP& DAFF 3-7DT=.7 VE=T*O3.E& *P.ET=7J *F*&*7T K >*TAFW*OE*S-&.O=7>=D*SOPP& V=7>.V K &A=7 [OT=&* K [OT=&* 0 1)/ Y ; 4 A-&*7TA -&A F=7WA NSAPSDE=P)D.7T K [OT=&* *7>3.E& 3OVE=T*O>*TOE*S-&.O=7>=D*
^`^ ^` 3orm 3OVE=T*O[*ES.OPAJ ^`^ 3.E& 3OVE=T*O[*ES.OPAJ ^ Se o pa8s do Eemetente for ^ argentina e o pa8s do fornecedor for argentina, imprimir o relatório ^ espanhol Se ambos forem Brasil, imprimir em portugus Para os ^ demais casos, imprimir em ingls =3 =OF3A1FA7>1 *Z DOBE A7> =OE*&*TFA7>1 *Z DOBE [O=>=.&A K DOP *FS*=3 =OF3A1FA7>1 *Z DOAEJ A7> =OE*&*TFA7>1 *Z DOAEJ [O=>=.&A K DO*SP *FS* [O=>=.&A K DO*7J *7>=3 ^ Abre o formulário para impressão da página de #erso DAFF 3-7DT=.7 STAETO3.E& *P.ET=7J 3.E& K NOA[AFO3.E7*D FA7J-AJ* K [O=>=.&A STAETPAJ* K [*ES. =&P.ET=7J FA7J-AJ* K S\FA7J- ^ imprime página de #erso DAFF 3-7DT=.7 VE=T*O3.E& *P.ET=7J V=7>.V K =73.; DAFF 3-7DT=.7 *7>O3.E& *ncerra formulário *7>3.E& 3OVE=T*O[*ES.OPAJ ^`^ ^` 3orm 3OF..POE*S-&.O=7>=D* ^`^ ^ te6t ^ ^^ ^ 2 p1 te6t ^ X p) te6t ^^ 3.E& 3OF..POE*S-&.O=7>=D* ^ Eesumo dos 8ndices de PP& de linha e k re'eição de Fote no Eecebimento [OPE=&O[*N K DOS=& F..P AT =OE*SO=7>=D* =3 [OPE=&O[*N K DOS=&014 A7> [OT=&* XK DOF=7WA1 ^ 3orm de impressão de cabec de Eesumo dos 8ndices P*E3.E& 3OVE=T*OE*S-&.O=7>=D*
HR
ABAP Training [OPE=&O[*N K DO7A. *FS*=3 [OT=&* 2 DOF=7WA P*E3.E& 3OVE=T*OE*S-&.O=7>=D* [OT=&* K 0 1G ^ 1)/ Y ; 4 *7>=3 DF*AE: =O3.E7*D E*A> TABF* =O3.E7*D V=TW *\ F=37E K =OE*SO=7>=D*F=37E E*A> TABF* =OT1V V=TW *\ V*ES K =OE*SO=7>=D* V*ES NSAPSDE=P)D.7T K [OT=&* NSAPSDE=P)PP&O&O= K =OE*SO=7>=D*PP&O& NSAPSDE=P)PP&OADO= K =OE*SO=7>=D*PP&OAD NSAPSDE=P)7A&*D
K =OT1V7A&*
NSAPSDE=P)F.TO& K =OE*SO=7>=D*F.TO& NSAPSDE=P)F.TOAD K =OE*SO=7>=D*F.TOAD NSAPSDE=P)PP&O.BOE K =O3.E7*DPP&O.B NSAPSDE=P)F.TO.BOE K =O3.E7*DF.TO.B ^ =mprime Eesumo dos 8ndices de PP& P*E3.E& 3OVE=T*O>*TOE*S-&.O=7>=D* *7>F..P ^ *ncerra formulário de dados de 7ota DAFF 3-7DT=.7 *7>O3.E& ^ 3orm de =mpressão de #erso da página P*E3.E& 3OVE=T*O[*ES.OPAJ ^ Fimpa tabela E*3E*SW =OE*SO=7>=D* *7>3.E&
3OF..POE*S-&.O=7>=D*
^`^ ^` 3orm 3OJEA[AOE*SO=7>=D* ^`^ ^ te6t ^ ^^ 3.E& 3OJEA[AOE*SO=7>=D* =OE*SO=7>=D*F=37E K =OTAB3=&F=37E =OE*SO=7>=D*V*ES K =OTAB3=&V*ES =OE*SO=7>=D*PP&O& K =OTAB3=&PP&O& =OE*SO=7>=D*PP&OAD K =OTAB3=&PP&OAD =OE*SO=7>=D*F.TO& K =OTAB3=&F.TO& =OE*SO=7>=D*F.TOAD K =OTAB3=&F.TOAD =OE*SO=7>=D*F.TO.BO& K =OTAB3=&F.TO.BO& =OE*SO=7>=D*PP&O.BO& K =OTAB3=&PP&O.BO& APP*7> =OE*SO=7>=D*
*7>3.E& 3OJEA[AOE*SO=7>=D* ^`^ ^` 3orm 3O*T*7S.O>ATA
^`^ 3.E& 3O*T*7S.O>ATA -S=7J PO>ATAO&*S PO>ATAOA7. DWA7J=7J PO>ATAOAT- >ATA: [O=> F=* T)G/SPEAS ^ Se o pa8s do Eemetente for ^ argentina e o pa8s do fornecedor for argentina, imprimir o relatório ^ espanhol Se ambos forem Brasil, imprimir em portugus Para os ^ demais casos, imprimir em ingls =3 =OF3A1FA7>1 *Z DOBE A7> =OE*&*TFA7>1 *Z DOBE [O=> K DOP *FS*=3 =OF3A1FA7>1 *Z DOAEJ A7> =OE*&*TFA7>1 *Z DOAEJ [O=> K DO*SP *FS* [O=> K DO*7J *7>=3 S*F*DT S=7JF* FT 3E.& T)G/ =7T. T)G/FT VW*E* SPEAS K [O=> A7> &7E K PO>ATAO&*S D.7DAT*7AT* T)G/FT0;4 Y PO>ATAOA7. =7T. PO>ATAOAT- *7>3.E& 3O*T*7S.O>ATA ^`^ ^` 3orm 3OSTAETO3.E& ^`^ ^ te6t ^ ^^ ^ 2 p1 te6t ^ X p) te6t ^^ 3.E& 3OSTAETO3.E& ^ Se o pa8s do Eemetente for ^ argentina e o pa8s do fornecedor for argentina, imprimir o relatório ^ espanhol Se ambos forem Brasil, imprimir em portugus Para os ^ demais casos, imprimir em ingls =3 =OF3A1FA7>1 *Z DOBE A7> =OE*&*TFA7>1 *Z DOBE [O=>=.&A K DOP *FS*=3 =OF3A1FA7>1 *Z DOAEJ A7> =OE*&*TFA7>1 *Z DOAEJ [O=>=.&A K DO*SP *FS* [O=>=.&A K DO*7J *7>=3 ^ Abre o formulário para impressão da página de #erso DAFF 3-7DT=.7 STAETO3.E& *P.ET=7J 3.E& K NOA[AFO3.E7*D FA7J-AJ* K [O=>=.&A STAETPAJ* K 3=EST =&P.ET=7J FA7J-AJ* K S\FA7J- *7>3.E&
3OSTAETO3.E&
^`^ ^` 3orm DAEADT*E=ST=DA ^`^ ^ te6t ^
I
ABAP Training ^^ ^ 2 p1 te6t ^ X p) te6t ^^ 3.E& DAEADT*E=ST=DA -S=7J POAT7A& PO.B* POFAET PO[AF.E E*A> TABF* =ODAB7 V=TW *\ AT7A& K POAT7A& =3 S\S-BED 7* PO[AF.E K *EE. *=T *7>=3 E*A> TABF* =OA-SP V=TW *\ .B* K PO.B* AT=77 K =ODAB7AT=77 FAET K POFAET =3 S\S-BED 7* PO[AF.E K *=T *7>=3 =3 =ODAB7AT3.E K 7-& [OAT3F[ K =OA-SPAT3F[ =3 PO[AF.E K [O[AFOPP& VE=T* [OAT3F[ T. PO[AF.E >*D=&AFS *FS* PO[AF.E K [OAT3F[ *7>=3 *FS* PO[AF.E K =OA-SPATVET *7>=3 *7>3.E& DAEADT*E=ST=DA ^`^ ^` 3orm fOcalcOppmOob' ^`^ ^ Dalcula PP& e .B ^^ 3.E& 3ODAFDOPP&O.B >ATA: [O.B*O3.E70H4 T\P* D, [O.B*O&AT0H4 T\P* D ^ selecao na DAB7 S*F*DT AT=77 A>NWF AT7A& AT3.E 3E.& DAB7 =7T. TABF* =ODAB7 VW*E* AT7A& K DOF.T* .E AT7A& K DOPP& .E AT7A& K DO7AS
select ob'e5 atinn atMrt at# 5lart from ausp into table iOausp for all entries in iOcabn Mhere 5lart K cOde! or 5lart K cO! and atinn K iOcabnatinn F..P AT =OTAB3=&
.7 DWA7J* .3 =OTAB3=&F=37E ^ Dalcula #alor de .B PP& [O.B*O3.E7 K =OTAB3=&F=37E P*E3.E& DAEADT*E=ST=DA -S=7J DOPP& [O.B*O3.E7 DO>*N [O[AFOPP& ^ Dalcula #alor de .B F.T* P*E3.E& DAEADT*E=ST=DA -S=7J DOF.T* [O.B*O3.E7 DO>*N [O[AFOF.T* ^ Jra#a #alores selecionados =O3.E7*DF=37E K =OTAB3=&F=37E TEA7SFAT* [O[AFOF.T* -S=7J , VE=T* [O[AFOPP& T. =O3.E7*DPP&O.B E=JWT-ST=3=*> VE=T* [O[AFOF.T* T. =O3.E7*DF.TO.B E=JWT-ST=3=*>
E*A> TABF* =ODAB7 V=TW *\ AT7A& K DO7AS =3 S\S-BED 7* =O3.E7*D7AS K *FS* E*A> TABF* =OA-SP V=TW *\ .B* K [O.B*O3.E7 AT=77 K =ODAB7AT=77 FAET K DO>*N =3 S\S-BED 7* =O3.E7*D7AS K *FS* =3 =ODAB7AT3.E K 7-& [OAT3F[ K =OA-SPAT3F[ VE=T* [OAT3F[ T. [O[AFO7AS >*D=&AFS *FS* [O[AFO7AS K =OA-SPATVET *7>=3 VE=T* [O[AFO7AS T. =O3.E7*D7AS E=JWT-ST=3=*> *7>=3 *7>=3 APP*7> =O3.E7*D DF*AE: [O[AFOPP&, [O[AFOF.T*
*7>.7 *7>F..P DF*AE: [O[AFOPP&, [O[AFOF.T* F..P AT =OTABO>*TO3=& .7 DWA7J* .3 =OTABO>*TO3=&F=37E .E =OTABO>*TO3=& &AT7E [O.B*O&AT01<4 K =OTABO>*TO3=&&AT7E [O.B*O&AT1<014 K =OTABO>*TO3=&F=37E ^ Dalcula #alor de .B PP& P*E3.E& DAEADT*E=ST=DA -S=7J DOPP& [O.B*O&AT DON [O[AFOPP& ^ Dalcula #alor de .B F.T* P*E3.E& DAEADT*E=ST=DA -S=7J DOF.T* [O.B*O&AT DON [O[AFOF.T* ^ Jra#ar dados =O3.E7*DO&ATF=37E K =OTABO>*TO3=&F=37E =O3.E7*DO&AT&AT7E K =OTABO>*TO3=&&AT7E TEA7SFAT* [O[AFOF.T* -S=7J ,
I1
ABAP Training VE=T* [O[AFOPP& T. =O3.E7*DO&ATPP&O.B E=JWT -ST=3=*> VE=T* [O[AFOF.T* T. =O3.E7*DO&ATF.TO.B E=JWT -ST=3=*> APP*7> =O3.E7*DO&AT DF*AE: [O[AFOPP&, [O[AFOF.T* *7>.7 *7>F..P *7>3.E& ^`^ ^` 3orm fOgra#aOtotalOnal ^`^ ^ gra#a total nal ^^ 3.E& 3OJEA[AOT.TAFO3=7AF &.[*: =OTAB3=&V*ES T. =OT.TOD*7TE.V*ES, =OTAB3=&73FO& T. =OT.TOD*7TE.73F, =OTAB3=&7PEO& T. =OT.TOD*7TE.7PE, =OTAB3=&7DZO& T. =OT.TOD*7TE.7DZ, =OTAB3=&7Z3O& T. =OT.TOD*7TE.7Z3, =OTAB3=&7PTO& T. =OT.TOD*7TE.7PT, =OTAB3=&PP&O& T. =OT.TOD*7TE.PP&, =OTAB3=&F.TO& T. =OT.TOD*7TE.F.T D.FF*DT =OT.TOD*7TE. &.[*: RRRR T. =OT.TOD*7TE.V*ES D.FF*DT =OT.TOD*7TE. *7>3.E& ^`^ ^` 3orm fOprintOtotalOnal ^`^ ^ =mprime o total nal ^^ 3.E& 3OPE=7TOT.TAFO3=7AF 3.E&AT D.F.E D.FOT.TAF VE=T*: Y; AD-& 7. D*7TE., 1/ S.ET =OT.TOD*7TE. B\ V*ES F..P AT =OT.TOD*7TE. DF*AE: =OT1V E*A> TABF* =OT1V V=TW *\ V*ES K =OT.TOD*7TE. V*ES
VE=T*: Y; =OT.TOD*7TE.V*ES, =OT1V7A&*, ;) =OT.TOD*7TE.73F, G/ =OT.TOD*7TE.7PE, I) =OT.TOD*7TE.7DZ, // =OT.TOD*7TE.7Z3, R) =OT.TOD*7TE.7PT,
1/ =OT.TOD*7TE.PP&, 1;/ =OT.TOD*7TE.F.T, 1/ *7>F..P -F=7* *7>3.E& ^`^ ^` 3orm fOprintOtotalOacum ^`^ ^ =mprime o total nal acum ^^ 3.E& 3OPE=7TOT.TAFOAD-& VE=T*: Y; AD-& 7. &TB, 1/ VE=T*: Y;) =OAD-&O&TB73FOAD, G/ =OAD-&O&TB7PEOAD, I) =OAD-&O&TB7DZOAD, // =OAD-&O&TB7Z3OAD, R) =OAD-&O&TB7PTOAD, 1/ =OAD-&O&TBPP&OAD, 1;/ =OAD-&O&TBF.TOAD, 1/ -F=7* *7>3.E& ^`^ ^` 3orm DAFD-FAOP*E=.>. ^`^ ^ *ste 3orm é utili!ado para calcular o ms de in8cio do per8odo ^ selecionado ^^ 3.E& DAFD-FAOP*E=.>. >ATA: [O&*SOBATDW F=* S\>AT-& =3 POBATDW K D.7DAT*7AT* PO&*S 1 =7T. [O>=AODAFD-F. *FS* D.7DAT*7AT* S\>AT-&0I4 1 =7T. [O&*SOBATDW [O&*SOBATDW K [O&*SOBATDW 1 D.7DAT*7AT* [O&*SOBATDW0I4 1 =7T. [O>=AODAFD-F. *7>=3 DAFF 3-7DT=.7 EPOFASTO>A\O.3O&.7TWS *P.ET=7J >A\O=7 K [O>=AODAFD-F. =&P.ET=7J FASTO>A\O.3O&.7TW K [O-FT=&.O>=A ^ primeiro dia do mes selecionado [O>T=OA7AF=S* K [O>=AODAFD-F. ^ Dálculo do in8cio do per8odo de análise POP*E=.> K POP*E=.> 1 >. POP*E=.> T=&*S [OPE=&*=E.O>=A K [O>=AODAFD-F. 1 D.7DAT*7AT* [OPE=&*=E.O>=A0I4 1 =7T. [O>=AODAFD-F. *7>>. [O>TO=7=D=. K [O>=AODAFD-F. [O>TO3=& K [O-FT=&.O>=A POP*E=.> K POP*E=.> 1 *7>3.E& DAFD-FAOP*E=.>.
I)
ABAP Training ^`^ ^` 3orm 3ODAFDOAD-& ^`^ ^ 3orm para calcular as notas acumuladas nos centros e &TB ^ *ste form também gra#a os resultados na tabela do centro ^^ 3.E& 3ODAFDOAD-& ^ >eclaração de #ariá#eis locais: >ATA: [OD*7TOS-&OPP&=AOAD F=* T/I-B*T3A >ATA: DO&=0/4 T\P* 7 [AF-* 1 [alor de calc de 7ota >ATA: [OPE=&O[*N T\P* = 3lag primeira #e! >ATA: [O&TBOS-&OPP&=AOAD F=* T/I-B*T3A >ATA: [O3.E7*DOS-&OPP&=AO& F=* T/I-B*T3A, [O3.E7*DOS-&O*&>=AOAD F=* T/I-B*T3A >ATA: B*J=7 .3 =OAD-&O3.E7*D .DD-ES , F=37E F=* ZAFSF=37E, S-&OPP&
S-&OPP&1O& F=* T/I-B*T3A, S-&OPP&1OAD F=* T/I-B*T3A, S-&OATEASO& F=* T/I-B*T3A, S-&OATEASOAD F=* T/I-B*T3A, S-&O*&>=AO& F=* T/I-B*T3A, S-&O*&>=AOAD F=* T/I-B*T3A >ATA: *7> .3 =OAD-&O3.E7*D S.ET =OAD-& B\ D*7TE. ^ #erica se é necessária a impressão dos totais por centro e empresa =3 S.O3.E7* *Z A7> S.O&AT7E *Z ^ Soma totais gerais para os Dentros e para *mpresa F..P AT =OAD-& [OD*7TOS-&OPP&=AOAD K [OD*7TOS-&O*&>=AOAD =OAD-& S-&O*&>=AOAD =3 S.OD*7T *Z #erica se nenhum centro foi selecionado [O&TBOS-&OPP&=AOAD K [O&TBOS-&O*&>=AOAD =OAD-& S-&O*&>=AOAD *7>=3 AT *7> .3 D*7TE. =OAD-&OD*7TE.D*7TE. K =OAD-&D*7TE. =OAD-&OD*7TE.S-&OPP&
I;
ABAP Training =OAD-&OD*7TE.S-&OATEAS K [OD*7TOS-&OATEASOAD =OAD-&OD*7TE.S-&O*&>=A K [OD*7TOS-&O*&>=AOAD APP*7> =OAD-&OD*7TE. DF*AE =OAD-&OD*7TE. DF*AE: [OD*7TOS-&OPP&=AOAD *7>AT *7>F..P F..P AT =OAD-&OD*7TE. ^ Fimpar as #aria#eis utili!adas no calculo DF*AE: [OT.TO73FOAD, [OT.TOF.TOAD, [OT.TOPP&OAD, [OT.TO7PEOAD, [OT.TO7PTOAD, [OT.TO7.TASOAD, [OT.TO7DZOAD ^ calcula nota de fornecimentoacumulado =3 =OAD-&OD*7TE.7-&O73F 2 [ODW*DO73FOAD K [OT.TO73FOAD K =OAD-&OD*7TE.S-&O73F Y =OAD-&OD*7TE.7-&O73F [OT.TOF.TOAD K 1 0 =OAD-&OD*7TE.S-&OF.T Y =OAD-&OD*7TE.7-&O73F 4 *FS* [ODW*DO73FOAD K *7>=3 ^ calcula nota processoacumulado =3 =OAD-&OD*7TE.S-&OPP&1 2 [OT.TOPP&OAD K =OAD-&OD*7TE.S-&OPP&=3 [OT.TO7PEOAD K 1 0 [OT.TOPP&OAD Y 1 4 =3 [OT.TO7PEOAD X [OT.TO7PEOAD K *7>=3 ^ calcula nota de pontualidade [OT.TO7PTOAD K =OAD-&OD*7TE.S-&O7PT Y =OAD-&OD*7TE.7-&O7PT =3 [OT.TO7PTOAD 2 1 [OT.TO7PTOAD K 1 *7>=3 =3 [OT.TO7PTOAD X [OT.TO7PTOAD K *7>=3 ^ calculo do 7DZ acumulado [OT.TO7.TASOAD K =OAD-&OD*7TE.S-&O*&>=A =OAD-&OD*7TE.S-&OATEAS
=3 [OT.TO7.TASOAD 2 [OT.TO7DZOAD K 0 =OAD-&OD*7TE.S-&O*&>=A Y [OT.TO7.TASOAD 4 ^ 1 *FS* [OT.TO7DZOAD K 1 *7>=3 ^ Jra#a dados na tabela iOtotOcentro ^ centro =OT.TOD*7TE.V*ES K =OAD-&OD*7TE.D*7TE. ^ gra#a nota de fornecimento acumulado =3 [ODW*DO73FOAD K =OT.TOD*7TE.73F K =OT.TOD*7TE.F.T K *FS* VE=T* [OT.TO73FOAD T. =OT.TOD*7TE.73F >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TOF.TOAD T. =OT.TOD*7TE.F.T >*D=&AFS ) E=JWT-ST=3=*> *7>=3 ^ gra#a nota processo acumulado =3 [ODW*DO73FOAD K =OT.TOD*7TE.PP& K =OT.TOD*7TE.7PE K *FS* VE=T* [OT.TOPP&OAD T. =OT.TOD*7TE.PP& >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TO7PEOAD T. =OT.TOD*7TE.7PE >*D=&AFS E=JWT-ST=3=*> *7>=3 ^ gra#a nota de pontualidade acumulado VE=T* [OT.TO7PTOAD T. =OT.TOD*7TE.7PT >*D=&AFS E=JWT-ST=3=*> ^ gra#a #alores de nota de compromisso de "ualidade acumulado VE=T* [OT.TO7DZOAD T. =OT.TOD*7TE.7DZ >*D=&AFS E=JWT-ST=3=*> ^ Dálculo do 7Z3 ^ Se 73F e 7PE esti#erem BEA7D.S, passar BEA7D. ^ =3 =OT.TOD*7TE.73F K A7> =OT.TOD*7TE.7PE K =OT.TOD*7TE.7Z3 K *FS* =3 [OT.TOP.7> X2 [OT.TO7Z3OAD K 0 0 =OT.TOD*7TE.73F ^ [O3AT.EO73F 4 0 =OT.TOD*7TE.7PE ^ [O3AT.EO7PE 4 0 =OT.TOD*7TE.7DZ ^ [O3AT.EO7DZ 4 4 Y [OT.TOP.7> VE=T* [OT.TO7Z3OAD T. =OT.TOD*7TE.7Z3 >*D=&AFS *7>=3 *7>=3 ^ Jra#a os dados acima na tabela APP*7> =OT.TOD*7TE. *7>F..P DF*AE: [OT.TO73FO&, [OT.TO73FOAD, [OT.TOF.TO&, [OT.TOF.TOAD, [OT.TOPP&O&, [OT.TOPP&OAD, [OT.TO7PEO&, [OT.TO7PEOAD,
IG
ABAP Training [OT.TO7PTO&, [OT.TO7PTOAD, [OT.TO7.TASO&, [OT.TO7.TASOAD, [OT.TO7DZO&, [OT.TO7DZOAD =3 S.OD*7T *Z #erica se nenhum centro foi selecionado ^ Dálculo dos dados gerais para *mpresa ^ calcula nota de fornecimentoacumulado =3 [O&TBO7-&O73FOAD 2 [ODW*DO73FOAD K [OT.TO73FOAD K [O&TBOS-&O73FOAD Y [O&TBO7-&O73FOAD [OT.TOF.TOAD K 1 0 [O&TBOS-&OF.TOAD Y [O&TBO7-&O73FOAD 4 *FS* [ODW*DO73FOAD K *7>=3 ^ calcula nota processoacumulado =3 [O&TBOS-&OPP&1OAD 2 [OT.TOPP&OAD K 0 [O&TBOS-&OPP&=3 [OT.TO7PEOAD K 1 0 [OT.TOPP&OAD Y 1 4 =3 [OT.TO7PEOAD X [OT.TO7PEOAD K *7>=3 ^ calcula nota de pontualidade [OT.TO7PTOAD K [O&TBOS-&O7PTOAD Y [O&TBO7-&O7PTOAD =3 [OT.TO7PTOAD 2 1 [OT.TO7PTOAD K 1 *7>=3 =3 [OT.TO7PTOAD X [OT.TO7PTOAD K *7>=3 ^ calculo do 7DZ acumulado [OT.TO7.TASOAD K [O&TBOS-&O*&>=AOAD [O&TBOS-&OATEASOAD =3 [OT.TO7.TASOAD 2 [OT.TO7DZOAD K 0 [O&TBOS-&O*&>=AOAD Y [OT.TO7.TASOAD 4 ^ 1 *FS* [OT.TO7DZOAD K 1 *7>=3 ^ Jra#a os dados para a estrutura iOacumO&TB ^ gra#a nota de fornecimento acumulado =3 [ODW*DO73FOAD K =OAD-&O&TB73FOAD K =OAD-&O&TBF.TOAD K *FS* VE=T* [OT.TO73FOAD T. =OAD-&O&TB73FOAD >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TOF.TOAD T. =OAD-&O&TBF.TOAD >*D=&AFS ) E=JWT-ST=3=*> *7>=3 ^ gra#a nota processo acumulado =3 [ODW*DO73FOAD K =OAD-&O&TBPP&OAD K
=OAD-&O&TB7PEOAD K *FS* VE=T* [OT.TOPP&OAD T. =OAD-&O&TBPP&OAD >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TO7PEOAD T. =OAD-&O&TB7PEOAD >*D=&AFS E=JWT-ST=3=*> *7>=3 ^ gra#a nota de pontualidade acumulado VE=T* [OT.TO7PTOAD T. =OAD-&O&TB7PTOAD >*D=&AFS E=JWT-ST=3=*> ^ gra#a #alores de nota de compromisso de "ualidade acumulado VE=T* [OT.TO7DZOAD T. =OAD-&O&TB7DZOAD >*D=&AFS E=JWT-ST=3=*> ^ Dálculo do 7Z3 ^ Se 73F e 7PE esti#erem BEA7D.S, passar BEA7D. =3 =OAD-&O&TB73FOAD K A7> =OAD-&O&TB7PEOAD K =OAD-&O&TB7Z3OAD K *FS* =3 [OT.TOP.7> X2 [OT.TO7Z3OAD K 0 0 =OAD-&O&TB73FOAD ^ [O3AT.EO73F 4 0 =OAD-&O&TB7PEOAD ^ [O3AT.EO7PE 4 0 =OAD-&O&TB7DZOAD ^ [O3AT.EO7DZ 4 4 Y [OT.TOP.7> VE=T* [OT.TO7Z3OAD T. =OAD-&O&TB7Z3OAD >*D=&AFS *7>=3 *7>=3 *7>=3 *7>=3 ^ Dalcula totais gerais por fornecedor ^ =nsere elemento na tabela para funcionar comando on change =OAD-&F=37E K RRRRRRRRR APP*7> =OAD-& S.ET =OAD-& B\ F=37E F..P AT =OAD-& .7 DWA7J* .3 =OAD-&F=37E =3 [OPE=&O[*N 7* =OAD-&O3.E7*DF=37E K [O3.E7*DOF=37E =OAD-&O3.E7*DS-&OPP&
IH
ABAP Training =OAD-&O3.E7*DS-&OATEASOAD K [O3.E7*DOS-&OATEASOAD =OAD-&O3.E7*DS-&O*&>=AO& K [O3.E7*DOS-&O*&>=AO& =OAD-&O3.E7*DS-&O*&>=AOAD K [O3.E7*DOS-&O*&>=AOAD
APP*7> =OAD-&O3.E7*D DF*AE =OAD-&O3.E7*D DF*AE: [O3.E7*DOS-&OPP&=AO&, [O3.E7*DOS-&O*&>=AOAD *7>=3
*7>.7 [O3.E7*DOS-&OPP&=AO& K [O3.E7*DOS-&O*&>=AO& =OAD-&S-&O*&>=AO& [O3.E7*DOS-&O*&>=AOAD K [O3.E7*DOS-&O*&>=AOAD =OAD-&S-&O*&>=AOAD
[OPE=&O[*N K 1 [O3.E7*DOF=37E K =OAD-&F=37E *7>F..P DF*AE: [OT.TO73FO&, [OT.TO73FOAD, [OT.TOF.TO&, [OT.TOF.TOAD, [OT.TOPP&O&, [OT.TOPP&OAD, [OT.TO7PEO&, [OT.TO7PEOAD, [OT.TO7PTO&, [OT.TO7PTOAD, [OT.TO7.TASO&, [OT.TO7.TASOAD, [OT.TO7DZO&, [OT.TO7DZOAD ^ Dálculo dos dados por fornecedor F..P AT =OAD-&O3.E7*D ^ 3ornecedor =OT.TO3.E7*DF=37E K =OAD-&O3.E7*DF=37E ^ calcula nota de fornecimentomes =3 =OAD-&O3.E7*D7-&O73FO& 2 [ODW*DO73FO& K [OT.TO73FO& K =OAD-&O3.E7*DS-&O73FO& Y =OAD-&O3.E7*D7-&O73FO& [OT.TOF.TO& K 1 0 =OAD-&O3.E7*DS-&OF.TO& Y =OAD-&O3.E7*D7-&O73FO& 4 *FS* [ODW*DO73FO& K *7>=3 ^ calcula nota de fornecimentoacumulado =3 =OAD-&O3.E7*D7-&O73FOAD 2 [ODW*DO73FOAD K [OT.TO73FOAD K =OAD-&O3.E7*DS-&O73FOAD Y =OAD-&O3.E7*D7-&O73FOAD [OT.TOF.TOAD K 1 0 =OAD-&O3.E7*DS-&OF.TOAD Y =OAD-&O3.E7*D7-&O73FOAD 4 *FS* [ODW*DO73FOAD K *7>=3 ^ calcula nota processomes =3 =OAD-&O3.E7*DS-&OPP&1O& 2 [OT.TOPP&O& K 0 iOacumOfornecS-&OPP&=3 [OT.TO7PEO& K 1 0 [OT.TOPP&O& Y 1 4 =3 [OT.TO7PEO& X [OT.TO7PEO& K *7>=3 ^ calcula nota processoacumulado =3 =OAD-&O3.E7*DS-&OPP&1OAD 2 [OT.TOPP&OAD K 0 =OAD-&O3.E7*DS-&OPP&=3 [OT.TO7PEOAD K 1 0 [OT.TOPP&OAD Y 1 4 =3 [OT.TO7PEOAD X [OT.TO7PEOAD K *7>=3 ^ calcula nota de pontualidade [OT.TO7PTO& K =OAD-&O3.E7*DS-&O7PTO& Y =OAD-&O3.E7*D7-&O7PTO& [OT.TO7PTOAD K =OAD-&O3.E7*DS-&O7PTOAD Y =OAD-&O3.E7*D7-&O7PTOAD
II
ABAP Training =3 [OT.TO7PTO& 2 1 [OT.TO7PTO& K 1 *7>=3 =3 [OT.TO7PTO& X [OT.TO7PTO& K *7>=3 =3 [OT.TO7PTOAD 2 1 [OT.TO7PTOAD K 1 *7>=3 =3 [OT.TO7PTOAD X [OT.TO7PTOAD K *7>=3 ^ calculo do 7DZ mes [OT.TO7.TASO& K =OAD-&O3.E7*DS-&O*&>=AO& =OAD-&O3.E7*DS-&OATEASO& =3 [OT.TO7.TASO& 2 [OT.TO7DZO& K 0 =OAD-&O3.E7*DS-&O*&>=AO& Y [OT.TO7.TASO& 4 ^ 1 *FS* [OT.TO7DZO& K 1 *7>=3 ^ calculo do 7DZ acumulado [OT.TO7.TASOAD K iOacumOfornecS-&O*&>=AOAD =OAD-&O3.E7*DS-&OATEASOAD =3 [OT.TO7.TASOAD 2 [OT.TO7DZOAD K 0 =OAD-&O3.E7*DS-&O*&>=AOAD Y [OT.TO7.TASOAD 4 ^ 1 *FS* [OT.TO7DZOAD K 1 *7>=3 ^ Jra#a os dados para a estrutura iOtotOfornec ^ gra#a nota de fornecimentomes =3 [ODW*DO73FO& K =OT.TO3.E7*D73FO& K =OT.TO3.E7*DF.TO& K *FS* VE=T* [OT.TO73FO& T. =OT.TO3.E7*D73FO& >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TOF.TO& T. =OT.TO3.E7*DF.TO& >*D=&AFS ) E=JWT-ST=3=*> *7>=3 ^ gra#a nota de fornecimento acumulado =3 [ODW*DO73FOAD K =OT.TO3.E7*D73FOAD K =OT.TO3.E7*DF.TOAD K *FS* VE=T* [OT.TO73FOAD T. =OT.TO3.E7*D73FOAD >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TOF.TOAD T. =OT.TO3.E7*DF.TOAD >*D=&AFS ) E=JWT-ST=3=*> *7>=3 ^ gra#a nota de processo mes =3 [ODW*DO73FO& K =OT.TO3.E7*DPP&O& K =OT.TO3.E7*D7PEO& K *FS*
VE=T* [OT.TOPP&O& T. =OT.TO3.E7*DPP&O& >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TO7PEO& T. =OT.TO3.E7*D7PEO& >*D=&AFS E=JWT-ST=3=*> *7>=3 ^ gra#a nota processo acumulado =3 [ODW*DO73FOAD K =OT.TO3.E7*DPP&OAD K =OT.TO3.E7*D7PEOAD K *FS* VE=T* [OT.TOPP&OAD T. =OT.TO3.E7*DPP&OAD >*D=&AFS E=JWT-ST=3=*> VE=T* [OT.TO7PEOAD T. =OT.TO3.E7*D7PEOAD >*D=&AFS E=JWT-ST=3=*> *7>=3 ^ gra#a nota de pontualidade mes VE=T* [OT.TO7PTO& T. =OT.TO3.E7*D7PTO& >*D=&AFS E=JWT-ST=3=*> ^ gra#a nota de pontualidade acumulado VE=T* [OT.TO7PTOAD T. =OT.TO3.E7*D7PTOAD >*D=&AFS E=JWT-ST=3=*> ^ gra#a #alores de nota de compromisso de "ualidade mes VE=T* [OT.TO7DZO& T. =OT.TO3.E7*D7DZO& >*D=&AFS E=JWT-ST=3=*> ^ gra#a #alores de nota de compromisso de "ualidade acumulado VE=T* [OT.TO7DZOAD T. =OT.TO3.E7*D7DZOAD >*D=&AFS E=JWT-ST=3=*> ^ Dálculo do 7Z3 ^ Se 73F e 7PE esti#erem BEA7D.S, passar BEA7D. =3 =OT.TO3.E7*D73FO& K A7> =OT.TO3.E7*D7PEO& K =OT.TO3.E7*D7Z3O& K *FS* =3 [OT.TOP.7> X2 mes [OT.TO7Z3O& K 0 0 =OT.TO3.E7*D73FO& ^ [O3AT.EO73F 4 0 =OT.TO3.E7*D7PEO& ^ [O3AT.EO7PE 4 0 =OT.TO3.E7*D7DZO& ^ [O3AT.EO7DZ 4 4 Y [OT.TOP.7> VE=T* [OT.TO7Z3O& T. =OT.TO3.E7*D7Z3O& >*D=&AFS *7>=3 *7>=3 =3 =OT.TO3.E7*D73FOAD K A7> =OT.TO3.E7*D7PEOAD K =OT.TO3.E7*D7Z3OAD K *FS* =3 [OT.TOP.7> X2 [OT.TO7Z3OAD K 0 0 =OT.TO3.E7*D73FOAD ^ [O3AT.EO73F 4 0 =OT.TO3.E7*D7PEOAD ^ [O3AT.EO7PE 4 0 =OT.TO3.E7*D7DZOAD ^ [O3AT.EO7DZ 4 4 Y [OT.TOP.7> VE=T* [OT.TO7Z3OAD T. =OT.TO3.E7*D7Z3OAD >*D=&AFS *7>=3 *7>=3 ^ gra#a dados da tabela iOtotOfornec APP*7> =OT.TO3.E7*D DF*AE =OT.TO3.E7*D *7>F..P
I/
ABAP Training *7>3.E& 3ODAFDOAD-& ^`^ ^` 3orm 3OPE=7TOS.PP& ^`^ ^ imprime somente PP& ^ ^^ 3.E& 3OPE=7TOS.PP& >ATA: [O3.E7*D F=* ZAFSF=37E 7r do fornecedor >*SDE=B* TABF* =OTAB3=& F=7*S [OF=7WAS =3 [OF=7WAS *Z &*SSAJ* =<; V=TW 7ão há dados para os critérios de seleção informados *=T *7>=3 S.ET =OTAB3=& B\ F=37E V*ES F..P AT =OTAB3=& E*A> TABF* =OT1V V=TW *\ V*ES K =OTAB3=&V*ES E*A> TABF* =OF3A1 V=TW *\ F=37E K =OTAB3=&F=37E .7 DWA7J* .3 =OTAB3=&F=37E
=3 [OPE=&O[*N K 3 E*A> TABF* =OT.TO3.E7*D V=TW *\ F=37E K [O3.E7*D P*E3.E& 3OPE=7TOT.TAFOS.PP& *7>=3 3.E&AT D.F.E D.FO7.E&AF =7T*7S=3=*> .7 VE=T*: Y) =OTAB3=&F=37E, 1H =OF3A17A&*1, 1/ 3.E&AT D.F.E D.FO7.E&AF [OPE=&O[*N K 3
^ Busca #alores de .B PP& e F.T* E*A> TABF* =O3.E7*D V=TW *\ F=37E K =OTAB3=&F=37E *7>.7 ^ =mprimir descrição de Dentro .7 DWA7J* .3 =OTAB3=&V*ES .E =OTAB3=&F=37E 3.E&AT D.F.E D.FO7.E&AF =7T*7S=3=*> .7 VE=T*: YH =OTAB3=&V*ES, 1H =OT1V7A&*, 1/ *7>.7 3.E&AT D.F.E D.FO7.E&AF VE=T*: YH PO&*S, 1/ =OTAB3=&PP&O& W.TSP.T .7, 11R =O3.E7*DPP&O.B, 1;/ =OTAB3=&F.TO&, 1G/ =O3.E7*DF.TO.B, 1/ W=>*: =OTAB3=&F=37E, =OTAB3=&V*ES 3.E&AT D.F.E D.FO7.E&AF 3.E&AT D.F.E D.FO7.E&AF VE=T*: YH Acum, POP*E=.>, &es0es4, 1/ =OTAB3=&PP&OAD W.TSP.T .7, 1;/ =OTAB3=&F.TOAD,
1/ W=>*: =OTAB3=&F=37E, =OTAB3=&V*ES ^ Arma!ena o 79mero do fornecedor para pes"uisa na tabela iOtotOfornec [O3.E7*D K =OTAB3=&F=37E AT FAST E*A> TABF* =OT.TO3.E7*D V=TW *\ F=37E K [O3.E7*D P*E3.E& 3OPE=7TOT.TAFOS.PP& *7>AT 3.E&AT D.F.E D.FO7.E&AF *7>F..P -F=7* =3 S.OD*7T *Z A7> S.O3.E7* *Z A7> S.O&AT7E *Z P*E3.E& 3OPE=7TOT.TAFOD*7TE.OS.PP& P*E3.E& 3OPE=7TOT.TAFOAD-&OS.PP& *FS*=3 S.OD*7T 7* A7> S.O3.E7* *Z A7> S.O&AT7E *Z P*E3.E& 3OPE=7TOT.TAFOD*7TE.OS.PP& *7>=3 *7>3.E& 3OPE=7TOS.PP& ^`^ ^` 3orm 3OPE=7TOES-& ^`^ ^ imprime relatório sumari!ado ^ ^^ 3.E& 3OPE=7TOES-& =3 S.OD*7T *Z A7> S.O3.E7* *Z A7> S.O&AT7E *Z P*E3.E& 3OPE=7TOT.TAFO3=7AF P*E3.E& 3OPE=7TOT.TAFOAD-& *FS*=3 S.OD*7T 7* A7> S.O3.E7* *Z A7> S.O&AT7E *Z P*E3.E& 3OPE=7TOT.TAFO3=7AF *FS* &*SSAJ* *<; V=TW 7ão é poss8#el imprimir com o modo de apresentação escolhido *7>=3 *7>3.E& 3OPE=7TOES-& ^`^ ^` 3orm fOprintOtotalOcentroOsoppm ^`^ ^ =mprime o total nal ^^ 3.E& 3OPE=7TOT.TAFOD*7TE.OS.PP& 3.E&AT D.F.E D.FOT.TAF VE=T*: Y; AD-& 7. D*7TE., 1/ S.ET =OT.TOD*7TE. B\ V*ES F..P AT =OT.TOD*7TE. DF*AE: =OT1V E*A> TABF* =OT1V V=TW *\ V*ES K =OT.TOD*7TE. V*ES VE=T*: Y; =OT.TOD*7TE.V*ES, =OT1V7A&*, 1/ =OT.TOD*7TE.PP&, 1;/ =OT.TOD*7TE.F.T, 1/ *7>F..P -F=7* *7>3.E& ^`^
I<
ABAP Training ^` 3orm fOprintOtotalOacumOsoppm ^`^ ^ =mprime o total nal acum ^^ 3.E& 3OPE=7TOT.TAFOAD-&OS.PP& VE=T*: Y; AD-& 7. &TB, 1/ VE=T*: Y1/ =OAD-&O&TBPP&OAD, 1;/ =OAD-&O&TBF.TOAD, 1/ -F=7* *7>3.E& ^^ ^ 3orm fOprintOtotalOsoppm ^^ ^ =mprime total do rel somente PP& e Fote ^^ 3.E& 3OPE=7TOT.TAFOS.PP&
FinesYinch I, DharactersYinch 1, 3ont attributes 3ont famil( W*F[* 3ont si!e 1), Point Bold 7o =talic 7o -nderlined 7o
Dharacters Attributes
3.E&AT D.F.E D.FOT.TAF VE=T*: YH Acum ms &TB , 1/ =OT.TO3.E7*DPP&O&, 1;/ =OT.TO3.E7*DF.TO&, 1/ VE=T*: YH Acum &TB0 7.JAP, POP*E=.>, meses4, 1/ =OT.TO3.E7*DPP&OAD, 1;/ =OT.TO3.E7*DF.TOAD, 1/ 3.E&AT D.F.E D.FO7.E&AF *7>3.E&
B
Bold print Standard attributes &ar5er 7o 3ont attributes Bold \es
=
=talics 3ont attributes =talic \es
e( Mord 3ont attributes 3ont famil( W*F[* 3ont si!e 1, Point
FP
3ont attributes 3ont famil( D.-E=*E 3ont si!e <, Point
(ormul&rio EA*ALE(OR")!
S
e( Mord 0loMer case4 3ont attributes 3ont famil( W*F[* 3ont si!e <, Point
&andante ) =dioma P .riginal lang * Status Acti#e
-
-nderlined 3ont attributes -nderlined
Fa(out set class 3&W7 >unning reports >e#elopment class NJAF Dlasse de desen#ol#imento Pro'eto Jalileo Dreated b( >ate Time Eelease Signicado
SAP 11/1RR; 1I:)G:1 )A
Dhanged b( >ate Time Eelease
ADSAT.S RI1RRR 1H:;<:R ;3
Paragraphs Attributes AS
Standard Standard attributes Fine spacing 1, F7 Alignment Feftaligned Tabs 1), DW Feftaligned ;H, DW Feftaligned
>*
>etalhe Standard attributes Fine spacing 1, F7 Alignment Feftaligned 3ont attributes 3ont famil( W*F[* 3ont si!e 1, Point
Eelatório de A#al 3ornecedor
Standard attributes 3irst page 3=EST >efault paragr AS Tab stop H, DW Page format >=7AG .rientation Portrait
\es
IR
ABAP Training
Tabs 11, DW 1I, DW )I, DW GI, DW HI, DW I, DW 3.
P
P1
P)
P;
), DW ;/, DW G), DW G/, DW H), DW H/, DW I), DW
Feftaligned Feftaligned Feftaligned Feftaligned Feftaligned Feftaligned
Standard attributes Fine spacing 1, F7 Alignment Feftaligned 3ont attributes 3ont famil( D.-E=*E 3ont si!e I, Point par cabeçalho #erso Standard attributes Fine spacing 1, F7 Alignment Feftaligned 3ont attributes 3ont famil( D.-E=*E 3ont si!e I, Point Tabs 1, D& Feftaligned G,H D& Feftaligned H,H D& Feftaligned /,I D& Feftaligned 1),/ D& Feftaligned PAEJEA3. W*A>*E Standard attributes Fine spacing 1, F7 Alignment Feftaligned 3ont attributes 3ont famil( D.-E=*E 3ont si!e 1, Point Tabs ;, DW Feftaligned GG, DW Feftaligned H, DW Feftaligned I), DW Feftaligned Standard attributes Fine spacing 1, F7 Alignment Feftaligned 3ont attributes 3ont famil( D.-E=*E 3ont si!e 1, Point Tabs ), DW Feftaligned )H, DW Feftaligned ;, DW Feftaligned ;H, DW Feftaligned G, DW Feftaligned GH, DW Feftaligned Standard attributes Fine spacing 1, F7 Alignment Feftaligned 3ont attributes 3ont famil( D.-E=*E 3ont si!e 1, Point Tabs
PG
PH
PI
P/
Feftaligned Feftaligned Feftaligned Feftaligned Feftaligned Feftaligned Feftaligned
Standard attributes Fine spacing 1, F7 Alignment Feftaligned 3ont attributes 3ont famil( D.-E=*E 3ont si!e 1, Point Tabs ), DW Feftaligned ;;, DW Feftaligned ;R, DW Feftaligned GH, DW Feftaligned H1, DW Feftaligned H/, DW Feftaligned I;, DW Feftaligned Standard attributes Fine spacing 1, F7 Alignment Feftaligned 3ont attributes 3ont famil( D.-E=*E 3ont si!e <, Point Tabs ), DW Feftaligned ;;, DW Feftaligned ;R, DW Feftaligned GH, DW Feftaligned H1, DW Feftaligned H/, DW Feftaligned I;, DW Feftaligned Standard attributes Fine spacing 1, F7 Alignment Feftaligned 3ont attributes 3ont famil( D.-E=*E 3ont si!e I, Point Tabs 1, DW Feftaligned )G, DW Feftaligned H, DW Feftaligned Standard attributes Fine spacing ,GH F7 Alignment Feftaligned 3ont attributes 3ont famil( D.-E=*E 3ont si!e I, Point Tabs 1, D& Feftaligned G,H D& Feftaligned H,H D& Feftaligned /,I D& Feftaligned 1),/ D& Feftaligned
/
ABAP Training T;
Tabulator for line items Standard attributes Fine spacing 1, F7 7o blan5 lines \es Alignment Feftaligned Tabs ;, D& Feftaligned I, D& Feftaligned 11, D& Sign, rightaligned 1), D& Feftaligned 1I,H D& Eightaligned 1/, D& Feftaligned
T=
Title in info MindoM Standard attributes Fine spacing 1, F7 Alignment Feftaligned 3ont attributes 3ont famil( W*F[* 3ont si!e 1G, Point Bold \es
-F
Separator Standard attributes Fine spacing ,H F7 Space after ,H F7 Alignment Feftaligned 3ont attributes 3ont famil( D.-E=*E 3ont si!e 1), Point -nderlined 7o
VindoMs Attributes 3..T*E
rodapé VindoM t(pe
D.7ST
W*A>*E
cabeçalho VindoM t(pe
D.7ST
=73.;
*ndereço VindoM t(pe
[AE
&A=7
anela Principal VindoM t(pe &A=7
Pages Attributes 3=EST
Pa(ment reminder: 1st page Standard attributes 7e6t page [*ES. Page counter &ode =7D 7umbering t(pe Arabic numerals Page MindoM &A=7 Feft margin G, DW -pper margin 1, F7 VindoM Midth /, DW VindoM height HH, F7 3..T*E Feft margin G, DW
W*A>*E
[*ES.
-pper margin VindoM Midth VindoM height Feft margin -pper margin VindoM Midth VindoM height
IH, F7 /, DW G, F7 G, DW ), F7 /, DW <, F7
[erso da carta Standard attributes 7e6t page 3=EST Page counter &ode STAET 7umbering t(pe Arabic numerals Page MindoM =73.; Feft margin G, DW -pper margin ), F7 VindoM Midth /, DW VindoM height H<, F7
Te6t elements for folloMing MindoMs: 3..T*E PI ,,7Z3K7.TA >A Z-AF=>A>* >* 3.E7*D=&*7T.,,7ASK7.TA >A A[AF=A. >* S=ST*&A PI ,,73FK7.TA >* 3.E7*D=&*7T. >* F.T*S,,7DZK7.TA D.&PE.& D.& Z-AF=>A>* 0=T*7S4 PI ,,7PEK7.TA >* PE.D*SS.0PP& >* F=7WA4,,7PTK7.TA >* P.7T-AF=>A>*
W*A>*E Y: =7DF->* T*ST*; .B*DT T*T => ST Y: B. \P.S ; F7 V=>TW /) DW W*=JWT I; F7 3EA&* 1 TV Y: B. \P.S ; F7 V=>TW /) D& W*=JWT H F7 3EA&* 1 TV P1 ,,E*FATE=. >* A[AF=A. >. 3.E7*D*>.E P1 ,,>ATA >* E*3*E7D=A : `NSAPSDE=P)>ATAOE*3` P1 ,,AD-&-FA>. >* : `NSAPSDE=P)AD-&O>T1` ATC `NSAPSDE=P)AD-&O>T)` P1 ,,3.E7: `!sapscrip)lifnr` P1 ,,`NSAPSDE=P)7A&*3` P1 ,,A[AF=A>.,,: `NSAPSDE=P)A[AF=A`,,PP& &S,,:`NSAPSDE=P)PP&O&` P1 ,,AT=[. 7. &S,,: `NSAPSDE=P)AT=[.`,,PP& AD-&-FA>.,,:`NSAPSDE=P)PP&OAD`
=73.; Y^ Driado por Antonio Delso Wunnicutt Dortada 1IY)Y)1 Y^ Eelatório de A#aliação de 3orncedore Portugus Y^ Ee"uest :&>R1GGR/ Y^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ Y: B. P.S H D& \P.S ; F7 V=>TW 1IH D& W*=JWT 1) F7 3EA&* 1 TV
/1
ABAP Training Y: B. P.S H D& \P.S 1H F7 V=>TW ;H D& W*=JWT I F7 3EA&* 1 TV Y: B. P.S G D& \P.S 1H F7 V=>TW ;H D& W*=JWT I F7 3EA&* 1 TV Y: B. P.S /H D& \P.S 1H F7 V=>TW H D& W*=JWT ; F7 3EA&* 1 TV Y: B. P.S /H D& \P.S 1H F7 V=>TW H D& W*=JWT I F7 3EA&* 1 TV Y: B. P.S 1)H D& \P.S 1H F7 V=>TW GH D& W*=JWT I F7 3EA&* 1 TV Y^ Y^ P ,,,, X2XB2PAEA -S. >. D.EE*=.XY2XY2 Y: B. P.S / D& \P.S )H F7 V=>TW 1 DW W*=JWT ; && 3EA&* 1 TV Y: B. P.S G) D& \P.S )H F7 V=>TW 1 DW W*=JWT ; && 3EA&* 1 TV P ,,,,,,,,>ATA,,ASS=7AT-EA * 7 *7TE*JA>.E P ,, &->.-S*,, 7. PE.D-EA>. Y: B. P.S / D& \P.S ;H F7 V=>TW 1 DW W*=JWT ; && 3EA&* 1 TV Y: B. P.S G) D& \P.S ;H F7 V=>TW 1 DW W*=JWT ; && 3EA&* 1 TV P ,, *7>*E*. =7S-3,, A-S*7T* Y: B. P.S / D& \P.S GH F7 V=>TW 1 DW W*=JWT ; && 3EA&* 1 TV Y: B. P.S G) D& \P.S GH F7 V=>TW 1 DW W*=JWT ; && 3EA&* 1 TV P ,, 7. *=ST*,, 3AF*D=>.,,,,E*=7T*JEA>. A. S*E[=. P.STAF *& Y: B. P.S / D& \P.S HH F7 V=>TW 1 DW W*=JWT ; && 3EA&* 1 TV Y: B. P.S G) D& \P.S HH F7 V=>TW 1 DW W*=JWT ; && 3EA&* 1 TV P ,, >*SD.7W*D=>.,, =73.E&A. *SDE=TA P ,, E*D-SA>.,,PY P.ET*=E.YSj7>=D. Y: B. P.S / D& \P.S IH F7 V=>TW 1 DW W*=JWT ; && 3EA&* 1 TV AS AS AS AS AS Y: =7DF->* T*ST*; .B*DT T*T => ST AS AS Y: B. P.S 1 DW \P.S 1R F7 V=>TW I/ DW W*=JWT I F7 =7T*7S=T\ ;H Y: B. P.S 1 DW \P.S )H F7 V=>TW R DW W*=JWT I F7 =7T*7S=T\ ;H Y: B. P.S 1 DW \P.S )H F7 V=>TW H DW W*=JWT I F7 3EA&* 1 TV =7T*7S=T\ Y: B. P.S I DW \P.S )H F7 V=>TW < DW W*=JWT I F7 =7T*7S=T\ ;H Y: B. P.S 1 DW \P.S ;1 F7 V=>TW I/ DW W*=JWT < F7 =7T*7S=T\ ;H Y^ Y: B. P.S 1 DW \P.S G) F7 V=>TW I/ DW W*=JWT < F7 =7T*7S=T\ ;H Y: B. P.S 1 DW \P.S H F7 V=>TW R DW W*=JWT I F7 =7T*7S=T\ ;H Y: B. P.S 1 DW \P.S H F7 V=>TW H DW W*=JWT I F7 3EA&* 1 TV =7T*7S=T\ Y: B. P.S I DW \P.S H F7 V=>TW < DW W*=JWT I F7 =7T*7S=T\ ;H
Y: B. P.S 1 DW \P.S HI F7 V=>TW I/ DW W*=JWT ) F7 =7T*7S=T\ ;H Y Y Y Y Y Y Y Y Y Y Y AS X2,, `NSAPSDE=P)>*STO7A&*` AS X2,, `NSAPSDE=P)>*STOE-A` `NSAPSDE=P) >*STODA=A` AS X2,, D*P: `NSAPSDE=P)>*STOD*P` `NSAPSDE=P) >*STOD=T\` AS X2,, *STA>. : `NSAPSDE=P)>*STOE*J`,, `NSAPSDE=P) >*STOPA=S` AS X2,, AYD >*PT. [*7>AS Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y AS AS AS X2,, `NSAPSDE=P)E*&O7A&*` AS X2,, `NSAPSDE=P)E*&OE-A` `NSAPSDE=P)E*&ODA=A` AS X2,, D*P: `NSAPSDE=P)E*&OD*P` `NSAPSDE=P) E*&OD=T\` AS X2,, *STA>. : `NSAPSDE=P)E*&OE*J`,, `NSAPSDE=P) E*&OPA=S` AS X2,, E*A >* S-PE=&*7T.S
&A=7 Y^ Driado por Antonio Delso Wunnicutt Dortada 1IY)Y)1 Y^ Eelatório de A#aliação de 3orncedore Portugus Y^ Ee"uest :&>R1GGR/ Y^ Alteração 3uncional =nclusão 7PT por -nidade &>R1H/G) Y^ Dorreção &>R1H/G< Y^ Alteração 3uncional &odicação 7PT &>R1H<I Y^ A'uste do la(out &>R1HASO-7=>A>*S
/)
ABAP Training Y: B. P.S 1RH DW \P.S 1; F7 V=>TW H DW W*=JWT I F7 3EA&* 1 TV Y: B. P.S )GH DW \P.S 1; F7 V=>TW H DW W*=JWT I F7 3EA&* 1 TV Y: B. P.S )RH DW \P.S 1; F7 V=>TW H DW W*=JWT I F7 3EA&* 1 TV Y: B. P.S ;GH DW \P.S 1; F7 V=>TW H DW W*=JWT I F7 3EA&* 1 TV Y: B. P.S ;RH DW \P.S 1; F7 V=>TW H DW W*=JWT I F7 3EA&* 1 TV Y: B. P.S GGH DW \P.S 1; F7 V=>TW H DW W*=JWT I F7 3EA&* 1 TV Y: B. P.S 1RH DW \P.S 1; F7 V=>TW ; DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S ;GH DW \P.S ); F7 V=>TW 1H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S ;GH DW \P.S ;; F7 V=>TW 1H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S ;GH DW \P.S G; F7 V=>TW 1H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S 1RH DW \P.S H; F7 V=>TW ; DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S 1RH DW \P.S I; F7 V=>TW ; DW W*=JWT 1 F7 3EA&* 1 TV P) ,, ^^^E*S-&. >* T.>AS AS -7=>A>*S^^^ P) ,,7.TA,,&S,,AD-,,7.TA,,&S,,ADP) ,,7Z3,,XFP2`NSAPSDE=P)7Z3O&OT`,,`NSAPSDE=P) 7Z3OADOT`XY2,,73F ,,XFP2`NSAPSDE=P)73FO&OT`,,`NSAPSDE=P)73FOADOT`XY2 P) ,,,,,,,,7PE,,XFP2`NSAPSDE=P)7PEO&OT`,,`NSAPSDE=P) 7PEOADOT`XY2 P) ,,,,,,,,7DZ,,XFP2`NSAPSDE=P)7DZO&OT`,,`NSAPSDE=P) 7DZOADOT`XY2 P) ,,7AS,, XFP2`NSAPSDE=P)7ASO&OT`XY2,,,,,,,, P) ,,7PT,, XFP2`NSAPSDE=P)7PTO&OT`XY2,, XFP2`NSAPSDE=P)7PTOADOT`XY2 *lement E*S-&.OP.EO-7=>A>* Y: PE.T*DT Y: =3 `NSAPSDE=P)D.7T` 2 )H; Y: P.S=T=.7 \.E=J=7 1)/ && Y: *7>=3 Y: B. P.S ;IH DW \P.S R; F7 V=>TW 1 DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S I1H DW \P.S R; F7 V=>TW / DW W*=JWT ) F7 3EA&* 1 TV Y: B. P.S 1H DW \P.S 1; F7 V=>TW ;H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S ;IH DW \P.S 1; F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S G1H DW \P.S 1; F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S GIH DW \P.S 1; F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S H1H DW \P.S 1; F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S HIH DW \P.S 1; F7 V=>TW 1) DW W*=JWT 1 F7 3EA&* 1 TV P) P) ,, ^^^E*S-&. P.E -7=>A>*^^^ P; ,,,, 7Z3,,,,,,,,,, 7PT P; ,,-7=>A>*,,&S,,AD-,,7.TA,,&S,,AD-,,&SYADY: *7>PE.T*DT *lement >*TAFW*OE*S-&.OP.EO-7=>A>* Y: PE.T*DT
Y: P.S=T=.7 \.E=J=7 `NSAPSDE=P)D.7T` && Y: B. P.S 1H DW \P.S ; F7 V=>TW ;H DW W*=JWT ; F7 3EA&* 1 TV Y: B. P.S ;IH DW \P.S ; F7 V=>TW H DW W*=JWT ; F7 3EA&* 1 TV Y: B. P.S G1H DW \P.S ; F7 V=>TW H DW W*=JWT ; F7 3EA&* 1 TV Y: B. P.S GIH DW \P.S ; F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S GIH DW \P.S 1; F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S GIH DW \P.S ); F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S H1H DW \P.S ; F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S H1H DW \P.S 1; F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S H1H DW \P.S ); F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S HIH DW \P.S ; F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S HIH DW \P.S 1; F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S HIH DW \P.S ); F7 V=>TW H DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S I1H DW \P.S ; F7 V=>TW / DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S I1H DW \P.S 1; F7 V=>TW / DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S I1H DW \P.S ); F7 V=>TW / DW W*=JWT 1 F7 3EA&* 1 TV P; ,,XFP2`NSAPSDE=P)7A&*D`,,`NSAPSDE=P)7Z3O&` ,,`NSAPSDE=P)7Z3OAD`XY2,,73F,,XFP2`NSAPSDE=P)73FO&` ,,`NSAPSDE=P)73FOAD`,,`NSAPSDE=P) 7PTO&`Y`NSAPSDE=P)7PTOAD`XY2 P; ,,,,,,,,7PE,,XFP2`NSAPSDE=P)7PEO&`,,`NSAPSDE=P) 7PEOAD`XY2 P; ,,,,,,,,7DZ,,XFP2`NSAPSDE=P)7DZO&`,,`NSAPSDE=P) 7DZOAD`XY2 Y: *7>PE.T*DT *lement E*S-&.O=7>=D*SOPP& Y: PE.T*DT Y: =3 `NSAPSDE=P)D.7T` 2 )/ Y: P.S=T=.7 \.E=J=7 )RI && Y: *7>=3 Y: B. P.S ;)H DW \P.S H; F7 V=>TW 1< DW W*=JWT ) F7 3EA&* 1 TV Y: B. P.S HH DW \P.S H; F7 V=>TW 1< DW W*=JWT ) F7 3EA&* 1 TV Y: B. P.S 1H DW \P.S I; F7 V=>TW I/ DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S ;<H DW \P.S I; F7 V=>TW I DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S HIH DW \P.S I; F7 V=>TW I DW W*=JWT 1 F7 3EA&* 1 TV PG PG ,, ^^^ E*S-&. >.S j7>=D*S >* PP& >* F=7WA * k E**=. >* F.T* 7. E*D*B=&*7T. ^^^ PG ,,,, PP& >* F=7WA,,,,,, k E**=. F.T* PG ,,-7=>A>*,,&S,,AD-,,.B,,&S,,AD-,,.B Y: *7>PE.T*DT *lement >*TAFW*OE*S-&.O=7>=D*SOPP& Y: P.S=T=.7 \.E=J=7 `NSAPSDE=P)D.7T` &&
/;
ABAP Training Y: PE.T*DT Y: B. P.S 1H DW \P.S ; F7 V=>TW ;1 DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S ;)H DW \P.S ; F7 V=>TW I DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S ;<H DW \P.S ; F7 V=>TW I DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S GGH DW \P.S ; F7 V=>TW I DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S HH DW \P.S ; F7 V=>TW I DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S HIH DW \P.S ; F7 V=>TW I DW W*=JWT 1 F7 3EA&* 1 TV Y: B. P.S I)H DW \P.S ; F7 V=>TW I DW W*=JWT 1 F7 3EA&* 1 TV PH ,,`NSAPSDE=P)7A&*D`,,`NSAPSDE=P) PP&O&O=`,,`NSAPSDE=P)PP&OADO=` ,,`NSAPSDE=P)PP&O.BOE`,,`NSAPSDE=P)F.TO&` ,,`NSAPSDE=P)F.TOAD`,,`NSAPSDE=P)F.TO.BOE` Y: *7>PE.T*DT
/G
ABAP Training
)X)R!F!%OS SAPS!R%PT
/H
ABAP Training )9ercGcio 1: >esen#ol#er um programa NO*DOSAPO1OAF "ue permita "ue o usuário #isuali!e ou imprima um formulário com os códigos dos &ateriais, a descrição, o tipo e o centro Permitir a ordenação dos dados por centro, tipo e material Tabelas: &AEA &AED &AT 3a!er a "uebra do relatório por centro 0Podese usar os seguintes comandos para fa!er isso: .7 DWA7J*, AT *7> ou AT 7*V Atenção Qs peculiaridades de cada comando4 . relatório de#e apresentar o la(out abai6o: >ica: para fa!er os "uadros ao redor dos itens, n,o utili!ar o comando OX, usar a alternati#a apresentada anteriormente na apostila "os demais locais, utilizar esse comando
/I
ABAP Training
Dentro: 66666666 Dódigo do &aterial
AT)R%A%S >escrição 6666666666666666666666666 6666666666666666666666666 6666666666666666666666666 6666666666666666666666666
data: ddYmmYaaaa Tipo
Total de &ateriais no Dentro: //
ABAP Training Resoluç,o 1: 1H Report: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ ^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ ^ ^ Dondencial e Proprietário ^ ^ ^ ^ Dop(right )1, Accenture ^ ^ ^ ^ Todos os direitos reser#ados ^ ^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ ^ ^ ^ 7ome do Shell: NOT*&PFAT*OE*P.ET [ersão do Shell: #1; ^ ^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ 7ome do Programa : NO*DOSAPSDE=PT ^ ^ T8tulo do Programa : Programa de impressão dos materiais por centro ^ ^ Programador : Aluno do curso de ABAP ^ ^ >ata : )RY;Y)1 ^ ^ ltima atuali!ação : )RY;Y)1 ^ ^ ^ ^ >escrição : *ste é um programa para a #isuali!ação de materiais ^ ^ ou impressão dos dados, de acordo com o par@metro ^ ^ selecionado pelo usuário ^ ^ =nclude : ^ ^ ^ ^ Dalls : ^ ^ ^ ^ &ódulos de 3unç+es: ^ ^ ^ ^^ ^ Fista de &odicaç+es: ^ ^ >ata Autor Dorr >escrição ^ ^ )RY;Y)1 ABAP>*[1 A31R); >esen#ol#imento inicial do prg ^ ^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E*P.ET NO*DOE*P.ETO1OAFIO> 7. STA7>AE> PAJ* W*A>=7J 7ão mostra o cabeçalho padrão SAP F=7*S=N* 1/ Fargura do report de 1/ caracteres F=7*D.-7T H< Domprimento do report de H< caracteres &*SSAJ*=> NABAP Dlasse de mensagens é NABAP ^E*S*E[* < F=7*S Pelo menos n linhas serão impressas na 9ltima ^XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX222222222222222222222222222222222222222 ^ S*SS. >* >*DFAEA. >* >A>.S ^XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX222222222222222222222222222222222222222 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ =ncludes ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^=7DF->*: ^ NN=W*A>E Dabeçalho padrão de report ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ Tabelas ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TABF*S: mara, marc, ma5t ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ >ados: ^ ^ Donstantes 0DO4 ^
/<
ABAP Training ^ [aria#eis 0[O4 ^ ^ Tabelas =nternas 0=O4 ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ Donstantes ^ ^>ATA: ^ DO ^ [ariá#eis ^ >ATA: [OD.7T T\P* = [AF-* contador ^ Tabela =nterna ^ ^ tabela interna para arma!enar o código e o tipo do material >ATA: B*J=7 .3 =Omara .DD-ES 1, matnr li5e maramatnr , mtart li5e maramtart , *7> .3 =Omara ^ tabela interna para arma!enar os materiais por centro >ATA: B*J=7 .3 =Omarc .DD-ES ), matnr li5e marcmatnr , Mer5s li5e marcMer5s , *7> .3 =Omarc ^ tabela interna para arma!enar a descrição dos materiais >ATA: B*J=7 .3 =Oma5t .DD-ES 1, matnr li5e ma5tmatnr , ma5t6 li5e ma5tma5t6 , *7> .3 =Oma5t ^ tabela nal contendo todos os dados >ATA: B*J=7 .3 =Onal .DD-ES ), matnr li5e maramatnr , mtart li5e maramtart , Mer5s li5e marcMer5s , ma5t6 li5e ma5tma5t6 , *7> .3 =Onal ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ Par@metros de entrada : ^ ^ Select .ptions 0SO4 ^ ^ Parameters 0PO4 ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ S*F*DT=.7SDE**7 B*J=7 .3 BF.D B1 V=TW 3EA&* T=TF* T1 selectoptions: sOmatnr for maramatnr, cód material sOmtart for maramtart, tipo de material sOMer5s for marcMer5s centro S*F*DT=.7SDE**7 *7> .3 BF.D B1 S*F*DT=.7SDE**7 B*J=7 .3 BF.D B) V=TW 3EA&* T=TF* T) parameters: pOcod radiobutton group g1, ordenado por código pOdesc radiobutton group g1, ordenado por descrição pOcentro radiobutton group g1, ordenado por centro pOtipo radiobutton group g1 ordenado por tipo S*F*DT=.7SDE**7 *7> .3 BF.D B) S*F*DT=.7SDE**7 B*J=7 .3 BF.D B; V=TW 3EA&* T=TF* T;
/R
ABAP Training parameters: pOSDE**7 radiobutton group g;, #isuali!ação dos dados pOSDE=PT radiobutton group g; impressão do formulário S*F*DT=.7SDE**7 *7> .3 BF.D B; XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX222222222222222222222222222222222222222 S*SS. >* PE.D*SSA&*7T. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX222222222222222222222222222222222222222 ^^ =7=T=AF=NAT=.7 Fogica para defaults inteligentes ^^ T) K Eelatório .rdenado Por: T; K .pç+es de sa8da ^^ ^AT S*F*DT=.7SDE**7 Tratamento de *rros e lógica para tela de seleção ^^ ^^ STAET.3S*F*DT=.7 Processamento principal ^^ ^ seleciona os dados P*E3.E& 3OS*F*DTO>ATA ^ imprime os dados P*E3.E& 3OPE=7TOE*P.ET ^^ ^*7>.3S*F*DT=.7 3im do processamento principal ^^ ^^ AT F=7*S*F*DT=.7 Seleção da linha do relatório ^^ set parameter id &AT eld iOnalmatnr Seta #ariá#el "ue en#ol#e transação call transaction &&; and s5ip rst screen Dhama transação consulta de materiais ^^ T.P.3PAJ* Dabeçalho 0Aparece sempre no topo da tela4 ^^ format color ) Mrite: Dódigo, ) >escrição do &aterial, I1 Tipo, II Dentro ^^ ^*7>.3PAJ* Eodapé ^^ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX222222222222222222222222222222222222222 S*SS. >* 3.E&S XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX222222222222222222222222222222222222222 ^`^ ^` 3orm 3OS*F*DTO>ATA ^`^ ^ Seleciona dados e arma!enaos na tabela interna
^
<
ABAP Training ^^ 3.E& 3OS*F*DTO>ATA select matnr mtart from mara into table iOmara Mhere matnr in sOmatnr and mtart in sOmtart if s(subrc ne message e1 endif
select matnr Mer5s from marc into table iOmarc for all entries in iOmara Mhere matnr K iOmaramatnr and Mer5s in sOMer5s select matnr ma5t6 from ma5t into table iOma5t for all entries in iOmara Mhere matnr K iOmaramatnr
^ l os dados para 'untálos em uma tabela interna nal loop at iOmarc read table iOmara Mith 5e( matnr K iOmarcmatnr if s(subrc e" read table iOma5t Mith 5e( matnr K iOmaramatnr if s(subrc e" iOnalmatnr K iOmaramatnr iOnalmtart K iOmaramtart iOnalMer5s K iOmarcMer5s iOnalma5t6 K iOma5tma5t6 append iOnal endif endif endloop *7>3.E&
3OS*F*DTO>ATA
^`^ ^` 3orm 3OPE=7TOE*P.ET ^`^ ^ =mprime o report ^ ^^ 3.E& 3OPE=7TOE*P.ET ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^Dlassica a tabela nal ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ if pOscreen *Z if pOcod e" sort iOnal b( matnr ma5t6 Mer5s elseif pOdesc e" sort iOnal b( ma5t6 Mer5s elseif pOtipo e" sort iOnal b( mtart ma5t6 Mer5s
<1
ABAP Training elseif pOcentro e" sort iOnal b( Mer5s ma5t6 endif else if pOcod e" sort iOnal b( Mer5s matnr ma5t6 elseif pOdesc e" sort iOnal b( Mer5s ma5t6 elseif pOtipo e" sort iOnal b( Mer5s mtart ma5t6 elseif pOcentro e" sort iOnal b( Mer5s ma5t6 endif endif ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^=mprime a tabela nal ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ se a opção do usuário for imprimir o formulário if pOscript pOscript e" ^ abre o formulário DAFF 3-7DT=.7 .P*7O3.E& *P.ET=7J >*[=D* K PE=7T*E 3.E& K NO*DOSAPSDE=T FA7J-AJ* K P ^ iniciali!a o formulário DAFF 3-7DT=.7 STAETO3.E& STAETO3.E& *P.ET=7J 3.E& K NO*DOSAPSDE=T FA7J-AJ* K P ^ imprime o cabeçalho DAFF 3-7DT=.7 VE=T*O3.E& *P.ET=7J *F*&*7T K DAB*D V=7>.V K &A=7 ^ l os dados da tabela nal loop at iOnal [OD.7T K [OD.7T 1 ^ a cada mudança de centro, chama o elemento de dados Z-*BEA da 'anela ^ &A=7, "ue iniciali!a uma no#a página e o elemento DAB*D "ue imprime ^ o cabeçalho on change of iOnalMer5s if s(tabi6 ne 1 se não for o 1 registro DAFF 3-7DT=.7 VE=T*O3.E& "uebra de página *P.ET=7J *F*&*7T K Z-*BEA V=7>.V K &A=7
DAFF 3-7DT=.7 VE=T*O3.E& imprime o cabeçalho *P.ET=7J *F*&*7T K DAB*D V=7>.V K &A=7
[OD.7T K iniciali!a o contador de materiais endif se não for o 1 registro endon ^ imprime os itens DAFF 3-7DT=.7 VE=T*O3.E&
<)
ABAP Training
*P.ET=7J *F*&*7T K =T*& V=7>.V K &A=7
*7>F..P ^ nali!a o formulár formulário io DAFF 3-7DT=.7 *7>O3.E& *7>O3.E & ^ fecha o formulário DAFF 3-7DT=.7 DF.S*O3.E&
3*DWA . STAET STAET 3*DWA . .P*7
^ senão 0se for #isuali!ação dos dados na tela4 else format color 1 loop at iOnal if pOcentro e" on change of iOnalMer5s if s(tabi6 ne 1 se não for o primeiro registro neMpage neMpage cria uma no#a página endif m do se for o primeiro registro endon endif Mrite: Y iOnalmatnr hotspot, hotspot, iOnalma5t6 , iOnalmtart , iOnalMer5s , hide: iOnalmatnr iOnal matnr endloop endif *7>3.E&
3OPE=7TOE*P.ET 3OPE=7TO E*P.ET
<;
ABAP Training 2H Sapscript:
3ormulário NO*DOSAPSDE=T
&andante ) =dioma PT =dioma original PT Eele#ante pYtradução Sim Status ati#o Dldesen#ol#imento NABAP Autor >ata Wora Eelease
ABAP>*[1 GG)1 /:H):H GIB
Signicado
&odicador >ata Wora Eelease
ABAP>*[1 GG)1 1I:H:; GIB
Eelatório de &ateriais &ateriai s
Atributos standard Página inicial PAJ*1 PAJ*1 Parágrfdefault Parágrfdefault P Stop tabulador 1, D& 3ormato página F*TT*E 3ormato folha 3orm#ert FinhasYpolegada I, DaracsYpolegada 1, Atribs3amDar 3am8lia caracs Altfamcaracs 7egrito =tálico Sublinhado
T=&*S 7ão 7ão
1), Ponto 7ão
Daracteres Atributos PJ
Daracteres Jrandes Atributos standard
ABAP Training &arcação 7ão Atribs3amDar 3am8lia caracs T=&*S Altfamcaracs 1<, Ponto
P&
Daracteres &édio Atribs3amDar 3am8lia caracs T=&*S Altfamcaracs 1), Ponto
PP
Daracteres Pe"uenos Atribs3amDar 3am8lia caracs T=&*S Altfamcaracs 1, Ponto
Parágrafos Atributos P
Paragrafo da &ain Atributos standard *space'linhas 1 F7 Alinhamento Alinhes" Tabuladores HH D& AlinhQ es"uerda 1/H D& AlinhQ es"uerda
PD
Paragrafo do Dabeçalho Atributos standard *space'linhas 1 F7 &argem es"uerda ) D& Alinhamento Alinhes" Tabuladores /H D& AlinhQ es"uerda 1IH D& AlinhQ es"uerda
-F
F=7WA >* S*PAEA. S*PAEA. Atributos standard *space'linhas H F7 &argem es"uerda < && Alinhamento Alinhes"
anela Atributos
ABAP Training DAB*D
Dabeçalho Dategoriaanela D.7ST
&A=7
anela princ Dategoriaanela &A=7
E.>AP*
Eodapé Dategoriaanela D.7ST
Páginas Atributos PAJ*1
Página no#a Atributos standard Págseg PAJ*1 7umerpágs &odo =7D Dtgnumeração Algarismos árabes anelas páginas &A=7 &argem es"uerda 1 D& &argem superior )< D& Fargura 'anela 1RI D& Altura 'anela )1) D& DAB*D &argem es"uerda 1 D& &argem superior 1 D& Fargura 'anela 1RI D& Altura 'anela 1) D& E.>AP* &argem es"uerda 1 D& &argem superior )G D& Fargura 'anela 1RI D& Altura 'anela I D&
*lementos te6to pYseg'anelas: DAB*D Y: B. \P.S 1 && V=>TW 1R) && W*=JWT 1) && 3EA&* 1 TV =7T*7S=T\ 1 PD ,,XPJ2&AT*E=A=SXY2,,XP&2`S\>AT-&`XY2 PD XP&2D*7TE.: `=O3=7AFMer5s`XY2 &A=7 Y^ anela princ *lemento DAB*D