Output type for HU physical inventory process
Hi All,
During a HU physical inventory process we print the physical inventory
document (the list) by transaction HUINV02.
The customer would like to make a few changes in the layout.
we didnt find the standard form and also not the output type.
is anybody know if there is a form or output type for this list?
Thanks,
Sharon.
Ok.
I think you need to create a new output type for this. Because even I did not find it anywhere in NACE.
Here is the print program: RM07IDRU.
As you already have the form name, you can create the output type.
Vishwa.
Similar Messages
-
Different movement types for store Physical Count process
Hi Experts
Would like to ask for your advice in terms of using different movement types for physical inventory process.
The scenario is like this:
1) Our client uses different counting processes for store inventory, with both annual full stock take AND spontaneous ad-hoc counting which is more frequent and involve probably around 30 articles a week.
2) Both types of counting involve count result interface from a 3rd party POS system
3) Since it is count result interface, we are considering the standard PI process (MI01, MI04, MI07, MI31, MI20, etcetc)
4) However the standard movement type is 701/702 while our client request a different financial posting, hence different movement types, for the ad-hoc counting
So the question is very simple: Is there a way for SAP to determine using 701/702 when it is a full stock take, while using another set of Z-movement types when it is a ad-hoc count. Bare in mind that both information are the count result, not a variance adjustment, from external POS system.
Appreciate very much for your help!
BR
DomSystem determine 701/702 in the IMS . refer t code OBYC - Trans GBB- gen modfier INV - GL Account assignment.
regards
manu -
How to do Physical inventory process in Warehouse
Hi Guys
What is the procedure for Physical inventory process in Ware house
Kindly provide step by step procedueHi
Please go with following transaction
MI01>Create physical inventory document>Enter Document Date>Planned count date>Plant Code>Storage Location>Click on Enter button>you will get the separate screen>Enter material code>and click on SAVE button (Ctrl+S)>you will get Physical inventory document number. (MI02-Use for delete)
(After getting Physical inventory document number you go with MIO4)
MI04>click on enter button>you will get "Enter inventory count screen>Enter Phys. inventory doc.no>Fiscal year>Count date>click on enter button>you will get separate screen>Enter physical qty>and click on save button ((Ctrl+S)>you will get massage from the SAPu201D Count entered for phys. inv. doc. 100000112"
(After completed above transaction you please go with MI07)
MI07>you will get Post inv.differences: initial screen>Enter Phys. inventory doc.> Fiscal year> Posting date>click on enter button>you will get separate screen with deference qty>click save button (Ctrl+S)> you will get document number generated from the system (Diffs in phys. inv. doc. 100000112 posted with m. doc. 4900001246)
Physical Inventory:
Physical Inventory is a business process in which physical stock is matched with book (system) stock. It is legal requirement to carry out physical inventory at least once in a year.
Physical inventory can be carried out both for a companyu2019s own stock (Unrestricted, Quality, Blocked Stock) and for special stocks (Customer Consignment stock, Vendor consignment stock from vendor, Returnable packaging). This inventory is carried out saperately for both type of stocks.
Physical Inventory Processes:
Several inventory processes available for physical inventory which includes as follow:
1. Periodic Physical Inventory
o All stocks of the company are physically counted on the balance sheet key date
o Every material must be counted
o Entire warehouse must be blocked for material movements during count.
2. Continuous Physical Inventory
o Stocks are counted continuously during the entire fiscal year.
o It is important to ensure that every material is physically counted at least once during the year.
3. Cycle Counting
o In this method of physical inventory, inventory is counted at regular intervals within a fiscal year.
o These intervals (or cycles) depend on the cycle counting indicator set for the material in Material Master record as CC indicator in plant view data.
o With this Cycle Counting Method of Physical Inventory allows fast-moving items to be counted more frequently than slow-moving items.
4. Inventory Sampling
o Randomly selected stocks of the company are physically counted on the balance sheet key date.
o If found not much variance between the counted stock and the book book stock, it is presumed that the book inventory balances for the other stocks are correct.
Physical Inventory Process Cycle Flow
1. Creation of physical inventory document
- Physical inventory document(s) is created individually or using the batch program, click for more information
- The transaction codes for creation physical inventory are as follow
Individual Inventory documentation creation
MI01 - Individual physical inventory creation
MIS1 - Inventory Sampling document creation
MICN - Cycle count inventory document creation
Collective Inventory document creation
MI31 - Own stock without special stock
MIK1 - Vendor consignment
MIQ1 - Project stock
MIM1 - Returnable Transpiration material
MIW1 - Customer Consignment stock
MIV1 - Returnable material with customer
MIO1 - Material provided to Vendor (Subcontracting material)
2. Print physical inventory document
- Physical Inventory document can be printed based on the physical inventory document status and or item status
- Transaction code MI21 is used to print the inventory document where print default value can be populated
3. Count the physical stock
- Based on the inventory document printout, the warehouse person will check the stock of material physically and note that on print out. This is completely physical process.
4. Enter count in system
- On completion of physical count, the count result is needs to be entered in the system. This can be with reference (using Tcode MI04) or without reference (using Tcode MI04) to the physical inventory document.
- If count quantity for that material is ZERO then select ZC (zero count) column instead of putting 0 in qty field. If 0 is used for zero count then systm will consider that as "not counted"
5. Analyze difference
- Once count is posted in the system, difference analysis can be carried out using transaction MI20
- The output gives information based on the input criteria i.e. physical inventory document, plant, material etc.
- The output gives information about the book quantity, Counted quantity, difference in quantity and value.
- From this output list, you can carry out further process ie initiate recount, change count quantity, post difference
6. Initiate recount and follow the steps 3,4,5
- If found unacceptable difference, recount is initiated using directly from difference analysis list (transaction code MI20) or using transaction code MI11.
- New inventory document will be created for selected items or for entire document
- The original document items will be deactivated once recount is initiated so original document will not be available for further process.
- On initiating recount, you need to process same as for new count document.
7. Post the difference
- Several options are available for posting difference
- Post difference after count is posted using transaction code MI07
- Posting the count and inventory differences using transaction code MI08, here you have created physical inventory but not counted so with this you can count and post difference in sinle step.
- Entering the count without a document reference using trasnaction code MI10, with this you can create inventory document, enter the count and post difference in single step.
some more points for posting difference
- Posting period must be open to post inventory difference.
- The fiscal year is set by specifying a planned count date when creating a physical inventory document.
- Tolerence to crear difference per user group can be set in customization.
- The system will generate material document for the difference qty and post the value to appropriate account (for valuated stock)
- The movement type in material document will be 701 or 702 based on gain or loss of material.
Serial Numbers in Physical Inventory
If material is managed with serial number then it is possible to carry out physical inventory for material with serial number. There are some pre-requisite before you carry out physical inventory for serialized materials.
- Serial number profile must be maintained in the material master.
- the serialization procedure MMSL (maintaining goods receipt and goods issue documents) has to be assigned to serial number profile.
- The stock check indicator in the serial number profile should be configured.
- Maintain basic settings for the serial numbers in customization for Serial Number Profile.
- Configure serial number management for physical inventory in the Settings for Physical Inventory step in Customizing for Inventory Management.
Blocked Stock Returns are the stock which is return stock from Customer or the stock which can be return back to vendor. To restrict the usage of this stock mostly business do transfer posting for this mateial as BLOCKED stock
Goto SPRO -> Sales and Distribution -> Billing -> goto Copy Control -> use Copy control Between billing doc to sales doc.
select the line which refers to ur billing doc and Return Sales doc.
Goto Item level and please check the Check box saying Update Doc Flow .
This check box will keep track of Refernce qty between Billing Doc and Return Sales Doc.
Rgds,
Rajesh -
Need to Block storage location through physical inventory process
Hello My client want to Block few storage locations not through authorisation objects but using physical inventory process.
can this be achieved through any configuration settings so that when we run physical count the SLoc blocks till the count completes & posted.or Any other method to block Sloc.
Please guide me on this.Hi,
You can use check box of "Posting block" in physical inventory document. Posting block indicates that no goods movements involving the materials listed in the physical inventory document can be posted for the duration of a physical inventory count.The indicator is set for the affected stocks in each case for all associated stock types and is not cancelled until the count results are posted.The blocking indicator can be set in one of two ways:
A.Directly upon entry of the physical inventory document (if the count is to take place immediately)
B.Shortly before the count (if the count is to take place later)
Regards,
Biju K
Moderator message:
Warning.
You copy-pasted someone else's work as your own message. Please don't do it in the future.
http://www.dfa.arkansas.gov/offices/informationServices/aasis/MM/Documents/InventoryPlanningandMonitoringManual.pdf
Edited by: Csaba Szommer on Oct 27, 2011 8:33 PM -
Is there a way to change the output type for Email Remittance Program?
Hello,
We are trying to implement Separate Remittance Program.The seeded output type is PDF( I have checked the output type for send separate remittance concurrent program) however the
email which we receive looks like a regular email I mean with a normal text . Is there a way to get the output in different type like excel,attachment,pdf.
Any inputs would be highly appreciated.
Thanks,
SushmaCurrently there is a bug raised
Bug 8208646 : R12 UNABLE TO SEND SEPARATE REMITTANCE ADVICE AS EMAIL ATTACHMENT IN PDF.
If you want to customize this process you need to create data definition,new rtf template and bursting program to send pdf as attachment. -
Output type for the managed codes cut letter is hard coded
Hello,
Very Good afternoon!
I have a requirement to create new Output Types for a Smart Form.
The already existing Output types are hard coded as shown Below :
CONSTANTS : c_kschl_order LIKE nast-kschl
VALUE 'ZUS0',
c_kschl_order1 LIKE nast-kschl
VALUE 'ZUS1',
Now they do not want to use ZUS1. Insted they wnat to use New Output Types.
u2022 Remove ZUS1 as we no longer use this one.
u2022 Add ZAU0
u2022 Add ZNZ0
u2022 Add ZJP0
u2022 Add ZCN0
u2022 Add ZKR0
How to add these Output types without Hardcoding as shown ABove.
Any Suggestions will be appreciated.....
For reference..I will paste the code of the Program here.
Here is the code :
PROGRAM DECLARATION
PROGRAM ID Z_RVADOR01_SALES_CUT_LETTER
TABLES: vbak, "Sales Document: Header Data
vbap, "Sales Document: Item Data
vbpa, "Sales Document: Partner
vbep, "Sales Document: Schedule Line Data
kna1, "General Data in Customer Master
MARA, "Material Master
KOMK, "Communicationarea for conditions
KOMP, "Communicationarea for conditions
KOMVD, "Communicationarea for conditions
VBCO3, "Communicationarea for view
VBDKA, "Headerview
VBDPA, "Itemview
VBDPAU, "Subitemnumbers
CONF_OUT, "Configuration data
SADR, "Addresses
TVAG, "Reason for rejection
VEDKA, "Servicecontract head data
VEDPA, "Servicecontract position data
VEDKN, "Servicecontract head notice data
VEDPN, "Servicecontract pos. notice data
RISERLS, "Serialnumbers
KOMSER, "Serialnumbers for print
TVBUR, "Sales office
TVKO, "Sales organisation
ADRS, "Communicationarea for Address
FPLTDR, "billing schedules
WTAD_ADDIS_IN_SO_PRINT, "additional
WTAD_BUYING_PRINT_EXTRA_TEXT, "texts belonging to additional
adrc,
adr6,
t247.
INCLUDE RVADTABL.
INCLUDE RVDIREKT.
INCLUDE VEDADATA.
data for access to central address maintenance
INCLUDE SDZAVDAT.
TYPE-POOLS: ADDI.
DATA PRICE_PRINT_MODE(1) TYPE C. "Print-mode
DATA: RETCODE LIKE SY-SUBRC. "Returncode
DATA: REPEAT(1) TYPE C.
DATA: XSCREEN(1) TYPE C. "Output on printer or screen
DATA: BEGIN OF STEU, "Controldata for output
VDKEX(1) TYPE C,
VDPEX(1) TYPE C,
KBKEX(1) TYPE C,
KBPEX(1) TYPE C,
END OF STEU.
DATA: BEGIN OF TVBDPA OCCURS 0. "Internal table for items
INCLUDE STRUCTURE VBDPA.
DATA: END OF TVBDPA.
DATA: BEGIN OF TKOMV OCCURS 50.
INCLUDE STRUCTURE KOMV.
DATA: END OF TKOMV.
DATA: BEGIN OF TKOMVD OCCURS 50.
INCLUDE STRUCTURE KOMVD.
DATA: END OF TKOMVD.
DATA: BEGIN OF TVBDPAU OCCURS 5.
INCLUDE STRUCTURE VBDPAU.
DATA: END OF TVBDPAU.
DATA: BEGIN OF TKOMCON OCCURS 50.
INCLUDE STRUCTURE CONF_OUT.
DATA: END OF TKOMCON.
DATA: BEGIN OF TKOMSERVH OCCURS 1.
INCLUDE STRUCTURE VEDKA.
DATA: END OF TKOMSERVH.
DATA: BEGIN OF TKOMSERVP OCCURS 5.
INCLUDE STRUCTURE VEDPA.
DATA: END OF TKOMSERVP.
DATA: BEGIN OF TKOMSERVHN OCCURS 5.
INCLUDE STRUCTURE VEDKN.
DATA: END OF TKOMSERVHN.
DATA: BEGIN OF TKOMSERVPN OCCURS 5.
INCLUDE STRUCTURE VEDPN.
DATA: END OF TKOMSERVPN.
DATA: BEGIN OF TKOMSER OCCURS 5.
INCLUDE STRUCTURE RISERLS.
DATA: END OF TKOMSER.
DATA: BEGIN OF TKOMSER_PRINT OCCURS 5.
INCLUDE STRUCTURE KOMSER.
DATA: END OF TKOMSER_PRINT.
DATA: BEGIN OF TFPLTDR OCCURS 5.
INCLUDE STRUCTURE FPLTDR.
DATA: END OF TFPLTDR.
DATA: TADDI_PRINT TYPE ADDI_SO_PRINT_ITAB WITH HEADER LINE.
TYPES:BEGIN OF ty_orders ,
xblnr LIKE mkpf-xblnr, "delivery number
erfmg LIKE mseg-erfmg, "goods issue quantity
custname LIKE kna1-name1, "customer name
bstnk LIKE vbak-bstnk, "purchase order number
ean11 LIKE vbap-ean11, "upc
kdmat LIKE vbap-kdmat, "customer material code
arktx LIKE vbap-arktx, "description
csrno LIKE kna1-kunnr, "customer service rep number
spras LIKE kna1-spras, "customer language key
csrname LIKE kna1-name1, "customer service rep name
csremail LIKE adr6-smtp_addr, "csr email
csrphone LIKE kna1-telf1, "csr telephone
csrext LIKE adrc-tel_extens, "csr extension
csrfax LIKE kna1-telfx, "csr fax
total LIKE lips-lfimg, "cut quantity
ldate(18) TYPE c,
END OF ty_orders.
CONSTANTS: c_kschl_order LIKE nast-kschl
VALUE 'ZUS0',
c_kschl_order1 LIKE nast-kschl
VALUE 'ZUS1', c_parvw_shipto LIKE vbpa-parvw
VALUE 'WE',
c_parvw_csr LIKE vbpa-parvw
VALUE 'ZS',
c_eng(1) TYPE c VALUE 'E',
c_sep(1) TYPE c VALUE '/',
c_sale(25) type c VALUE 'Sales Order'.
DATA: WA_VBAK TYPE VBAK,
tbl_ord TYPE ty_orders OCCURS 0 WITH HEADER LINE,
w_csrname(30) TYPE c,
w_csrno(30) TYPE c,
w_email LIKE adr6-smtp_addr,
f_shipto_found TYPE c,
w_custname(30) TYPE c,
w_month(2),
w_ldate(18),
w_total LIKE lips-lfimg,
w_lines TYPE i VALUE 0,
f_mail(1) TYPE c,
cnt_1 TYPE i VALUE 0,
cnt_2 TYPE i VALUE 0,
tbl_otf LIKE itcoo OCCURS 0 WITH HEADER LINE,
w_type(25) TYPE c,
st_doc_data LIKE sodocchgi1,
tbl_objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE,
tbl_line LIKE tline OCCURS 0 WITH HEADER LINE,
tbl_attach LIKE solisti1 OCCURS 10 WITH HEADER LINE,
tbl_objhead LIKE solisti1 OCCURS 10 WITH HEADER LINE,
tbl_proc_para LIKE soparai1 OCCURS 10 WITH HEADER LINE,
tbl_maillist LIKE somlreci1 OCCURS 10 WITH HEADER LINE,
tbl_pack_list LIKE sopcklsti1 OCCURS 10 WITH HEADER LINE,
tbl_cpo LIKE itcpo OCCURS 0 WITH HEADER LINE,"SAPscript output
" interface
tbl_cpp LIKE itcpp OCCURS 0 WITH HEADER LINE,"SAPscript output
" parameters
tbl_smtp TYPE szadr_adsmtp_line OCCURS 0 WITH HEADER LINE,
tbl_cdhdpos LIKE cdshw OCCURS 0 WITH HEADER LINE,
tbl_cdpos LIKE cdshw OCCURS 0 WITH HEADER LINE,
wrk_lines LIKE sy-tabix,
hltlines TYPE i,
off1 TYPE p,
fle1(2) TYPE p,
fle2(2) TYPE p,
htabix LIKE sy-tabix,
hfeld(500) TYPE c.
FORM ENTRY USING RETURN_CODE US_SCREEN.
if sy-tcode = 'VA01'.
IF nast-kschl = c_kschl_order.
SELECT SINGLE * FROM VBAK INTO WA_VBAK WHERE vbeln = nast-objky.
IF SY-SUBRC = 0.
CLEAR RETCODE.
XSCREEN = US_SCREEN.
PERFORM PROCESSING USING us_screen.
IF RETCODE NE 0.
RETURN_CODE = 1.
ELSE.
RETURN_CODE = 0.
ENDIF.
ELSE.
retcode = sy-subrc.
syst-msgid = 'ZVERROR'.
syst-msgno = '000'.
syst-msgty = 'E'.
syst-msgv1 = NAST-KSCHL.
syst-msgv1 = 'Sales Order cut letter
for this order already issued'.
syst-msgv2 = ' '.
PERFORM protocol_update.
ENDIF.
ELSE.
CLEAR retcode.
xscreen = us_screen.
PERFORM processing USING us_screen.
IF retcode NE 0.
return_code = 1.
ELSE.
return_code = 0.
ENDIF.
ENDIF.
endif.
ENDFORM.
FORM PROCESSING *
FORM PROCESSING USING proc_screen.
CASE nast-kschl.
WHEN c_kschl_order.
PERFORM get_orders.
CHECK retcode = 0.
PERFORM openform USING proc_screen vbak-landtx.
CHECK retcode = 0.
PERFORM layout.
CHECK retcode = 0.
CHECK proc_screen NE 'X'.
w_type = c_sale.
PERFORM send_email USING proc_screen.
WHEN c_kschl_order1.
PERFORM get_orders.
CHECK retcode = 0.
CHECK proc_screen NE 'X'.
w_type = c_sale.
PERFORM send_email USING proc_screen.
WHEN OTHERS.
retcode = 1.
syst-msgid = 'E0'.
syst-msgno = '430'.
syst-msgty = 'E'.
PERFORM protocol_update.
ENDCASE.
IF retcode EQ 0.
syst-msgid = '69'.
syst-msgno = '254'.
syst-msgty = 'S'.
syst-msgv1 = nast-kschl.
PERFORM protocol_update.
ELSE.
syst-msgid = 'CKCC'.
syst-msgno = '036'.
syst-msgty = 'E'.
PERFORM protocol_update.
ENDIF.
ENDFORM.
FORM PROTOCOL_UPDATE *
The messages are collected for the processing protocol. *
FORM PROTOCOL_UPDATE.
IF xscreen EQ space.
CALL FUNCTION 'NAST_PROTOCOL_UPDATE'
EXPORTING
MSG_ARBGB = SYST-MSGID
MSG_NR = SYST-MSGNO
MSG_TY = SYST-MSGTY
MSG_V1 = SYST-MSGV1
MSG_V2 = SYST-MSGV2
MSG_V3 = SYST-MSGV3
MSG_V4 = SYST-MSGV4
EXCEPTIONS
OTHERS = 1.
ELSE.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM.
*& Form get_orders
text
--> p1 text
<-- p2 text
FORM get_orders.
DATA : f_csr_found TYPE c.
SELECT SINGLE vbeln vkorg vdatu bstnk kunnr
FROM vbak
INTO (vbak-vbeln,vbak-vkorg,vbak-vdatu,vbak-bstnk,vbak-kunnr)
WHERE vbeln EQ nast-objky.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'VN'.
syst-msgno = '203'.
syst-msgty = 'E'.
syst-msgv1 = 'VBAK'.
syst-msgv2 = sy-subrc.
PERFORM protocol_update.
ENDIF.
SELECT vbeln posnr matnr pmatn arktx abgru kdmat werks
FROM vbap
INTO (vbap-vbeln,vbap-posnr,vbap-matnr,vbap-pmatn,
vbap-arktx,vbap-abgru,vbap-kdmat,vbap-werks)
WHERE vbeln = vbak-vbeln
AND abgru NE space "select items havng Rejection Reason
and PSTYV NE 'ZHDR'.
to check whether the reason for rejection was picked from the
managed codes tables
data: war_abgru type abgru,
w_exist type c.
clear : war_abgru, w_exist.
select single abgru from ZMAT_REJ002
into war_abgru
where vkorg = vbak-vkorg
and kunnr <> vbak-kunnr
and MATNR = vbap-matnr
and datef <= vbak-vdatu
and datet >= vbak-vdatu.
if sy-subrc <> 0.
select single abgru from ZMAT_REJ003
into war_abgru
where vkorg = vbak-vkorg
and kunnr <> vbak-kunnr
and MATNR = vbap-matnr
and datef <= vbak-vdatu
and datet >= vbak-vdatu.
if sy-subrc <> 0.
select single abgru from ZMAT_REJ001
into war_abgru
where vkorg = vbak-vkorg
and werks <> vbap-werks
and matnr = vbap-matnr
and datef <= vbak-vdatu
and datet >= vbak-vdatu.
if sy-subrc <> 0.
select single abgru from ZMAT_REJ004
into war_abgru
where vkorg = vbak-vkorg
and matnr = vbap-matnr
and datef >= vbak-vdatu
and datet <= vbak-vdatu.
if sy-subrc <> 0.
else.
w_exist = 'X'.
endif.
else.
w_exist = 'X'.
endif.
else.
w_exist = 'X'.
endif.
else.
w_exist = 'X'.
endif.
if w_exist = 'X'.
end for check from managed codes table
*to find the quantity fields
SELECT SINGLE wmeng bmeng
FROM vbep
INTO (vbep-wmeng,vbep-bmeng)
WHERE vbeln EQ vbap-vbeln
AND posnr EQ vbap-posnr.
*to get info about the customer
SELECT SINGLE kunnr
FROM vbpa
INTO vbpa-kunnr
WHERE vbeln EQ vbak-vbeln
AND parvw EQ c_parvw_shipto.
IF sy-subrc EQ 0.
f_shipto_found = 'X'.
SELECT SINGLE name1 spras
FROM kna1
INTO (kna1-name1,kna1-spras)
WHERE kunnr EQ vbpa-kunnr.
IF sy-subrc EQ 0.
w_custname = kna1-name1.
CLEAR kna1-name1.
ENDIF.
ENDIF.
SELECT SINGLE kunnr
FROM vbpa
INTO vbpa-kunnr
WHERE vbeln EQ vbak-vbeln
AND parvw EQ c_parvw_csr.
IF SY-SUBRC EQ 0.
f_csr_found = 'X'.
SELECT SINGLE kunnr name1 name2 adrnr
FROM kna1
INTO (kna1-kunnr,kna1-name1,kna1-name2,
kna1-adrnr)
WHERE kunnr EQ vbpa-kunnr.
IF sy-subrc EQ 0.
w_csrno = kna1-kunnr.
w_csrname = kna1-name1.
CLEAR kna1-name1.
SELECT SINGLE tel_number tel_extens fax_number
FROM adrc
INTO (adrc-tel_number,adrc-tel_extens,
adrc-fax_number)
WHERE addrnumber EQ kna1-adrnr.
CLEAR: adr6, w_email.
SELECT SINGLE * FROM adr6 WHERE addrnumber = kna1-adrnr.
IF sy-subrc = 0.
w_email = adr6-smtp_addr.
ENDIF.
ENDIF.
ENDIF.
*to get the date format in french
IF kna1-spras NE c_eng.
w_month = sy-datum+4(2).
SELECT SINGLE ltx
FROM t247
INTO t247-ltx
WHERE spras EQ kna1-spras
AND mnr EQ w_month.
CONCATENATE sy-datum+6(2)
t247-ltx
sy-datum+0(4)
INTO w_ldate
SEPARATED BY space.
ELSE.
CONCATENATE sy-datum+4(2)
sy-datum+6(2)
sy-datum+0(4)
INTO w_ldate
SEPARATED BY c_sep.
ENDIF.
w_total = vbep-wmeng - vbep-bmeng.
IF w_total GT 0.
PERFORM fill_orders.
ELSE.
IF vbap-abgru NE space.
w_total = vbep-wmeng.
PERFORM fill_orders.
ENDIF.
ENDIF.
CLEAR vbap.
endif. " check for w_exist for Managed Codes entry
ENDSELECT.
IF tbl_ord[] IS INITIAL.
retcode = 1.
syst-msgid = 'FZ'.
syst-msgno = '027'.
syst-msgty = 'E'.
PERFORM protocol_update.
ENDIF.
IF f_csr_found IS INITIAL.
syst-msgid = '8B'.
syst-msgno = '127'.
syst-msgty = 'W'.
syst-msgv1 = c_parvw_csr.
PERFORM protocol_update.
ENDIF.
IF f_shipto_found IS INITIAL.
syst-msgid = '8B'.
syst-msgno = '127'.
syst-msgty = 'W'.
syst-msgv1 = c_parvw_shipto.
PERFORM protocol_update.
ENDIF.
ENDFORM. " get_orders
*& Form layout
text
--> p1 text
<-- p2 text
FORM layout.
SORT tbl_ord BY bstnk kdmat.
LOOP AT tbl_ord.
AT FIRST.
PERFORM writeform_text.
ENDAT.
PERFORM writeform.
AT LAST.
PERFORM writeform_footer.
ENDAT.
ENDLOOP.
CLEAR : cnt_1,cnt_2.
PERFORM closeform.
ENDFORM. " layout
*& Form openform
text
FORM openform USING us_screen us_country.
DESCRIBE TABLE tbl_ord LINES w_lines.
IF w_lines EQ 0.
retcode = '1'.
syst-msgid = 'FE'.
syst-msgno = '078'.
syst-msgty = 'E'.
PERFORM protocol_update.
ENDIF.
CHECK retcode EQ 0.
INCLUDE zrvadopfo.
ENDFORM. " openform
*& Form send_email
text
-->P_PROC_SCREEN text
FORM send_email USING PROC_SCREEN.
f_mail = 'X'.
PERFORM openform USING proc_screen vbak-landtx.
LOOP AT tbl_ord.
AT FIRST.
PERFORM writeform_text.
ENDAT.
PERFORM writeform.
AT LAST.
PERFORM writeform_footer.
ENDAT.
ENDLOOP.
CLEAR cnt_2.
PERFORM closeform.
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
format = 'PDF' "'ASCII'
IMPORTING
bin_filesize = st_doc_data-doc_size
TABLES
otf = tbl_otf
lines = tbl_line
EXCEPTIONS "DEVK912166
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 3
OTHERS = 4.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'OA'. "DEVK912166
syst-msgno = '186'. "DEVK912166
syst-msgty = 'E'. "DEVK912166
PERFORM protocol_update.
ENDIF.
REFRESH tbl_objtxt.
CLEAR tbl_objtxt.
CLEAR tbl_proc_para.
REFRESH tbl_proc_para.
CLEAR tbl_maillist.
REFRESH tbl_maillist.
CLEAR tbl_pack_list.
REFRESH tbl_pack_list.
st_doc_data-obj_name = 'Sales Order Cut Letter'.
st_doc_data-obj_langu = 'E'. "DEVK905849
st_doc_data-sensitivty = 'F'. "DEVK905849
st_doc_data-obj_prio = 1. "DEVK905849
CONCATENATE w_type 'Cut Letter' INTO "#EC NOTEXT
st_doc_data-obj_descr SEPARATED BY space.
DATA w_line(3) TYPE c.
PERFORM format_pdf. "DEVK905849
concatenate VBAK-VBELN '.PDF' into tbl_objhead.
tbl_objhead = 'Sales Order Cut Letter.PDF'.
APPEND tbl_objhead.
"DEVK905849
CLEAR wrk_lines.
DESCRIBE TABLE tbl_attach LINES wrk_lines.
fields needed for email
tbl_maillist-com_type = 'INT'.
tbl_maillist-receiver = w_email.
tbl_maillist-rec_type = 'U'.
APPEND tbl_maillist.
send email
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
STARTING NEW TASK 'MAIL'
EXPORTING
document_data = st_doc_data
document_type = 'PDF'
COMMIT_WORK = 'X' " added after ECC6.0 upgrade
TABLES
object_header = tbl_objhead
object_content = tbl_objtxt
receivers = tbl_maillist
EXCEPTIONS "DEVK912166
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'ZA_G'. "DEVK912166
syst-msgno = '922'. "DEVK912166
syst-msgty = 'E'. "DEVK912166
syst-msgv1 = sy-subrc. "DEVK912166
syst-msgv2 = tbl_smtp-adsmtp-smtp_addr. "DEVK912166
PERFORM protocol_update.
syst-msgid = 'VW'.
syst-msgno = '001'.
syst-msgty = 'E'.
syst-msgv1 = 'Print successful:email Recepient Invalid'."#EC NOTEXT
PERFORM protocol_update.
ENDIF.
ENDFORM. " send_email
*& Form fill_orders
text
--> p1 text
<-- p2 text
FORM fill_orders.
tbl_ord-bstnk = vbak-bstnk.
tbl_ord-kdmat = vbap-kdmat.
tbl_ord-xblnr = vbak-vbeln.
tbl_ord-ean11 = vbap-pmatn.
tbl_ord-arktx = vbap-arktx.
tbl_ord-csrno = w_csrno .
tbl_ord-csremail = w_email.
tbl_ord-spras = kna1-spras .
tbl_ord-csrphone = adrc-tel_number.
tbl_ord-csrfax = adrc-fax_number.
tbl_ord-csrext = adrc-tel_extens.
tbl_ord-total = w_total.
tbl_ord-custname = w_custname.
tbl_ord-csrname = w_csrname .
tbl_ord-ldate = w_ldate.
APPEND tbl_ord.
CLEAR tbl_ord.
CLEAR w_total.
CLEAR w_ldate.
ENDFORM. " fill_orders
*& Form writeform_text
text
--> p1 text
<-- p2 text
FORM writeform_text.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'WTEXT'
window = 'WINDOW2'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'EBR'.
syst-msgno = '056'.
syst-msgty = 'E'.
syst-msgv1 = 'WTEXT'.
syst-msgv2 = 'WINDOW2'.
PERFORM protocol_update.
ENDIF.
ENDFORM. " writeform_text
*& Form writeform
text
--> p1 text
<-- p2 text
FORM writeform.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'EMAIN'
window = 'MAIN'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'EBR'.
syst-msgno = '056'.
syst-msgty = 'E'.
syst-msgv1 = 'WTEXT'.
syst-msgv2 = 'WINDOW2'.
PERFORM protocol_update.
ENDIF.
ENDFORM. " writeform
*& Form writeform_footer
text
--> p1 text
<-- p2 text
FORM writeform_footer.
IF nast-spras = 'N'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'FOOTER'
window = 'MAIN'
EXCEPTIONS
element = 1
window = 2.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'WFOOTER'
window = 'WINDOW12'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'EBR'.
syst-msgno = '056'.
syst-msgty = 'E'.
syst-msgv1 = 'WFOOTER'.
syst-msgv2 = 'WINDOW12'.
PERFORM protocol_update.
ENDIF.
ENDFORM. " writeform_footer
*& Form closeform
text
--> p1 text
<-- p2 text
FORM closeform.
CALL FUNCTION 'CLOSE_FORM'
TABLES
otfdata = tbl_otf
EXCEPTIONS
unopened = 1
bad_pageformat_for_print = 2
OTHERS = 3.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'PS'.
syst-msgno = '005'.
syst-msgty = 'E'.
PERFORM protocol_update.
ENDIF.
ENDFORM. " closeform
*& Form format_pdf
text
--> p1 text
<-- p2 text
FORM format_pdf.
FIELD-SYMBOLS <fs>.
DESCRIBE TABLE tbl_line LINES hltlines.
DESCRIBE FIELD tbl_line LENGTH fle1 IN BYTE MODE . Defect#1579-
DESCRIBE FIELD tbl_objtxt LENGTH fle2 IN BYTE MODE . Defect#1579-
Start of Defect#1579+
DESCRIBE FIELD tbl_line LENGTH fle1 IN CHARACTER MODE.
DESCRIBE FIELD tbl_objtxt LENGTH fle2 IN CHARACTER MODE.
End of Defect#1579+
CLEAR tbl_objtxt.
REFRESH tbl_objtxt.
LOOP AT tbl_line.
htabix = sy-tabix.
MOVE tbl_line TO hfeld+off1.
IF htabix = hltlines.
fle1 = strlen( tbl_line ).
ENDIF.
off1 = off1 + fle1.
IF off1 GE fle2.
CLEAR tbl_objtxt.
tbl_objtxt = hfeld(fle2).
APPEND tbl_objtxt.
SHIFT hfeld BY fle2 PLACES.
off1 = off1 - fle2.
ENDIF.
IF htabix = hltlines.
IF off1 GT 0.
CLEAR tbl_objtxt.
tbl_objtxt = hfeld(off1).
APPEND tbl_objtxt.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM. " format_pdf
ANy Suggestion or help will be appreciated!
Regards,
Kittu
Edited by: Kittu on Jun 30, 2008 12:32 PMHello Julie Waller,
Very Good evening!
Thank you very much for your response!
Sometimes...I miss the basic things and start concentarcting on typical ways to fix the issue. ....which will only make my issue critical.
Hello Sathya,
Thank you for your response!
POints are rewarded..
Have a great day ahead!
Regards,
Kittu -
Regarding Creation of Output types for SAP SCRIPTS
Hi All,
I want to create new output types for my SAP Script.
What is the procedure for creating new <b>Z - Output Type</b>.
Like <b>ZA01 for Sales Order</b>.
What is the procedure can any body help me in this regard.
It is not to use <b>ZA01</b> in <b>NACE</b> & connect Print Program & Layout set against Form Entry.
It is for creation of <b>ZA01 Output</b> Type itself.
If anybody knows the procedure please post the steps.
Also please mention will there be any diffrence in creation from <b>Module to Module</b> (or) <b>Transaction (Vs) Transaction</b>. Just like <b>Sales Order (Vs) Purchase Order (Vs) Production Order</b>.
Thanks in advance.
Thanks & Regards,
Rayeez.hi Shaik,
Steps for output type:
Go to NACE Transaction
Select V1 - Sales.
Click Output type
In edit mode , click on new entries.
Give output type as ZA01 with some descp.
Then enter , then u need to give the Access seq. as 0010
Rest proprties are more and less similar to the BA00 standard output type in V1 only.
After that u need to give the processing routines.
In that u need to give the Program name
followed by Form routine name
In this way u can create the output from NACE tran.
Let me know if u want anything else.
Cheers
Rewrd points, if found helpful -
Problem in using output type for purchase order
Hi experts,
I am using output type for first time so may be i have done wrong configuration for po output type.The steps i have done are :-
1) Going to tcode NACE->Selected the row u201CEF Purchase Orderu201D and clicked on u201CProcedures".
2) In procedures there are 2 procedures for the application EF (Purchase Order). To proceed further, we would need to find out the procedure that is currently active.Gone to transaction SPRO. In this, navigate as Materials management -> Purchasing ->Messages -> Output control -> Message Determination Schemas ->Define Message Schema for Purchase Order
3) Clicking on u201CAssign Schema to Purchase Orderu201D. So, the procedure RMBEF1 is active for EF (Purchase Order) .
4) Go back to transaction NACE. Select u2018EFu2019 and click on u201COutput typesu201D.
5) Let us use the output type u201CNEU name purchase orderu201D for this purpose. Double-click on NEU.
6) Ensured that the checkboxes u201CAccess to conditionsu201D and u201Cmultiple issuingu201D are checked and the access sequence is 0001(DocType/PurchOrg/Vendor).Only 0001 and 0002 is available in f4 help for this.
7) Now clicked on u201CProcessing Routinesu201D on the left hand side. Ensured that there is an entry for Medium u2018Au2019 (Distribution ALE).
8) After that going back to the main screen of NACE. Select EF (Purchase Order) and clicked on u201CCondition Recordsu201D.
Select NEU and clicked on u201CCondition recordsu201D. The pop-up box appears that gives three radio button option :-
1) Purchasing output determination :purchasing org / vendor for EDI
2) Purchasing output determination :doc. type / purchasing org /vendor
3) Purchasing output determination :document type
but it is not having option only for purchasing organisation through which we can send idoc for changes or creation of PO in that particular pur.org now if i choose 2) i have to give doc type and purchasing org both bcoz they are mandatory fields and value for vendor.
9) Also i have done the necessary ALE configuration (not covered in this document). In the partner profiles, use the message type u201CORDERSu201D and the IDOC type u201CORDERS05u201D.In the tab u201CMessage Controlu201D, used the process codes u201CME10u201D and u201CME11u201D for u201CPO Createu201D and u201CPO Changeu201D respectively.
but the idoc is not generated many times when po is changed and when once it is generated it is giving error
Please suggest solution.
Thanks in advance
nehavtIn me22n in messages tab after looking into processing log it is giving->No recipient found for message type ORDCHG in the
ALE model ,next time giving error as no idoc items belonging to purchasing document found,when i changed message type to ORDCHG the status is green in messages tab it is giving-> error occured while idoc xyz is sent and in WE02 status is red 02
error passing data to port(could not find code page for receiving system) -
Need to configure output type for adobe form
Hello All,
I need to configure output type for Adobe Form thru NACE. What would be print program and how do I call my form from that program? and, what would be the FORM routine for that form in NACE?
I'm little confused, Pls I need your help.
Thanks in advance,
ChandraHi,
Just before few weeks we did this task.
Say for example if you want to print PO details through ADOBE form instead of normal sapscript layout or standard MEDRUCK, you can follow the following steps.
1. Design the form in SFP tcode, by passing the necessary inputs through form interface.
2. Then use tcode tcode NACE and select EF as application and click output types button on the application tool bar. Select NEU output type and double click processing routines on left side.
3. Then, in the right side of the screen we can see the calling program and the form (may be sapscript or smartform) whatever used.
4. For form names we have two options in NACE tcode.
One is Form and the otherone is PDF/Smartform Form. If you are using adobe form give your form name under PDF/Smartform and also select PDF under the type option in the same screen.
This worked perfectly for us. But pass the required parameters to the form from the routine used in standard program.
If any queries please post it. -
New Output type for purchase return excise invoice..?
Hi all
For purchase return process with exisable material.
Here I m using the transaction
1.J1IS to create purchase return excise invoice and
2.J1IV for posting to accounts & print purchase return excise invoice
.In standard SAP the output for purchase return excise invoice is JEXC.
here my query is started,
ABAPer created the new program for purchase return output with all new layouts,
And from functional side i have defined new output type for the same as YEXC copying from JEXC.
While doing the transaction J1IV, i getting the output type YEXC, i m not able to print preview.
To proceed further i need some body guidence. Like where to assign the output type.
some body can give some inputs .
Thanks
sap-mmHi AP thanks for ur immediate response.
But i have done all the configuratuion in NACE only.
There in nace i m not able find out the mistake or missing configuration.
Can u expalin me step by step process end to end .
Thanks
sap-mm -
Automatic configuration of NEU output types for PO Vendor and its partners
Hi All,
I have requirement where I need need to send IDOC to PO Vendor and its partners at the same time when PO is created and changed. I need to get NEU output types for Vendor and Partners in messages automatically. Can any one guide me how to get this functionality. Please help me with step by step process. I am new to MM.
Thanks,
RaviTo attach output type to purchase order :
Go to NACE , Select Application EF ( Purchase Order) and Click on Condition Records button.
In a POP UP window double click NEU and then select the right Key Combination and maintain right transmission medium and output devide details. -
Want to change output type for 10000 sales orders through MASS
Hi Friends,
I would like to change the Output type in the sales order for 10000 sales orders.
Can I do with MASS transaction. If so, Plz let me know how ?
Is there any other process to change the output type for 10000 sales orders, as its difficult to manually in each and every sales order.
Its very urgent issue, Plz let me know at the earliest.
Thanks & Regards,
Praveen Kumar. AThis may be little tough for 10000 sales orders.
1. You have to remove the output record for the irrelevant output record using tcode VV12 for the relevant document type. So now for the document type, the old output wont be triggered.
2. Now, create output records for hte correct output type in VV11 tcode(for the output type BA03) for the document type. Now this output will be triggered for all the document types you are creating from now onwards.
3. To trigger the output type BA03, in all the old orders, you just have to open these sales orders in change mode (VA02), and just save it. When u open it the output type BA03 will be automatically triggered as the master data is maintained in VV11. But because just opening all the 10000 sales orders in VA02 one by one be a mechanical task, you have to think of some tool for this.
May be a CATT procedure can do the trick. Else, you can just create a small program, where you can upload these sales orders and the program will just open these orders in change mode and just saves it (without making any changes). Then the output will be retriggered.
Here again, if you are printing the output directly, it is advisable to trigger the output in batch mode(Date/Time field is 1 in VV11), and then you can again trigger the printing again using the program RSNAST00 after office hours for these 10k orders.
I hope I answered ur query.
Pls lemme know if you need some more info. (You can reward me too...) -
Dear Experts,
I have created a output type for the application V2.
our requirment is when a user goto transaction VL02N click on Outbound Delivery->Issue Delevery Output then the Output Type should be displayed and if he clicks on that Output Type the script should execute.
my question is after we create Output type is anything else to do to get that Output Type in specific transaction?
thnx in advance...
VHi,
As per your question, I assume you are asking for getting a pop-up window for selecting the Output types when executing the ISSUE OUTPUT transaction in VL02N.
If you configured the Output type and maintain necessary setting in Output Determination procedure and Condition records.,& assignment of Smartforms and Print programs, then as per standard
A pop-up will appear with the Output type and the Processing status of it, there you will have options
1. To print
2. To Print preview
3. To check Print options.
This is the standard design, Please check with the Developer if this design was modified in the Print program .
Please revert back if you need more details.
regards,
santosh -
Output Type for Outbound Delivery in VL02N
Hi All,
Could you please tell me how to maintain output types for a specific outbound delivery in ECC , so that inbound delivery is created automatically from it? is it maintained in VL02N? I actually searched this on various forums but did not find the correct answer, as everywhere only the customizing is given.
Thanks in advance
Best Regards,
AbhijeetHi,
You can maintain the output type SPED as below. Once you do PGI, SPED should be processed. If not , do it manually from VL71.
VL02N -> Extra>Delivery Output -> Header> Output Type = SPED
Regards
Edited by: Shashidhar Shetty on Dec 5, 2011 1:59 PM -
Creating output type for MB01,MB1B & MB1C for IDOC
Dear Exoerts,
Here scenarion is client using interface at front end.Which provides backup data from SAP.
Can anybody guide to Create output type for transactions MB01,MB1B & MB1C.It is going to use for IDOC creation.Client wants Inventory program at front end system.
Waiting for your reply.Hi,
Please check below link in this regard. Thanking you.
http://help.sap.com/saphelp_45b/helpdata/en/52/16ac64543311d1891c0000e8322f96/frameset.htm
Edited by: Padmasri Garapati on Nov 30, 2011 3:14 PM
Maybe you are looking for
-
HP Officejet Pro 8500- prints wirelessly from one computer in network but not the other
I can print wirelessly from my laptop, but not my desktop. The printer shows on the list, checked as the default, and READY, but document does not seem to find its way there. It never shows up in the print queue.
-
In this tutorial http://www.kirupa.com/developer/mx2004/thumbnails5.htm it explain how to make a Flash Thumbnail Photo Gallery. I am designing a bigger photo gellery based on this code. how do I have the photo gallery to list 5 pictures it create a n
-
Sent mail shows up on iphone but not on computer in sent box?
When I type a message and send it from the iphone it does not show up in the sent mail box on my computer or ipad.
-
I have an enabled form that attaches the full pdf to an outgoing email when the 'Submit' button is selected. If nothing is completed on the blank form (ie. not changed) then when the 'Submit' button is clicked an email is initiated with the pdf atta
-
Flash 14.0.0.125 crashes on Firefox 30.0
This is the latest combination that crashes on my system (Vista). I have disabled RealPlayer, and have the latest GPU drivers. Some suggested fixes involve disabling protected mode. Isn't this like solving the problem of a tight seat-belt by removing