cancel
Showing results for 
Search instead for 
Did you mean: 

unable to retrieve data into smart form

Former Member
0 Kudos

when im executing report with invoice no. in selection screen,a message ' "reference field w_final-fkimg is unknown in form'' is appearing.but i declared 'w_final like zform1' in global definitions->global data&accordingly placed the fields in main window&in TABLE node i gave 'loop s_final into w_final'.

please help.

**&----


***& Report ZSMART1

***&

**&----


***&

***&

**&----


**

REPORT ZSMART1 no standard page heading line-size 255.

TABLES : VBRP,KONV.

**DEVK903710

***56

TYPES : BEGIN OF TY_FINAL,

  • VBELN TYPE VBRP-VBELN,"INVOICE NO

  • ADRNR TYPE KNA1-ADRNR, "ADDRESS FOR CONSIGNEE

  • BSTKD TYPE VBKD-BSTKD, "PO NUMBER

  • BSTDK TYPE VBKD-BSTDK, "PO DATE

  • TABIX TYPE SY-TABIX, "SERIAL NO.

ARKTX TYPE VBRP-ARKTX, "DESCRITION

  • PACK TYPE I, "NO OF PACKAGES

  • UMREZ TYPE SMEINH-UMREZ, "AVG. CONTENTS PER PACKAGE IN KGS

FKIMG TYPE VBRP-FKIMG, "TOTAL QTY IN KGS

KNUMV TYPE KONV-KNUMV,

KBETR TYPE KONV-KBETR, "SELLING RATE/KG

  • KBETR1 TYPE KONV-KBETR,

KWERT TYPE KONV-KWERT,

TARIFF TYPE ZFORM1-TARIFF,

DUTY TYPE ZFORM1-DUTY,

AMOUNT TYPE ZFORM1-AMOUNT,

END OF TY_FINAL.

TYPES : BEGIN OF TY_ITEM,

VBELN TYPE VBRP-VBELN,"INVOICE NO

POSNR TYPE VBRP-POSNR,

ARKTX TYPE VBRP-ARKTX, "DESCRITION

FKIMG TYPE VBRP-FKIMG, "TOTAL QTY IN KGS

BSTKD TYPE VBKD-BSTKD, "PO NUMBER

BSTDK TYPE VBKD-BSTDK, "PO DATE

AUBEL TYPE VBRP-AUBEL,

AUPOS TYPE VBRP-AUPOS,

END OF TY_ITEM.

*DATA: wformname TYPE tdsfname VALUE 'ZTRAINING03'.

*DATA: wfmname TYPE rs38l_fnam.

DATA : FM_NAM TYPE RS38L_FNAM .

DATA :IT_ITEM TYPE TABLE OF TY_ITEM,

W_ITEM TYPE TY_ITEM,

W_FINAL TYPE ZFORM1,

T_FINAL TYPE TABLE OF ZFORM1,

    • P TYPE I VALUE 250, "total quantity.

TOTALDUTY TYPE I VALUE 0,

CESS TYPE I,

EDCESS TYPE I,

VAT TYPE I,

FREIGHT TYPE I,

GROSSTOTAL TYPE I,

TOTAL TYPE I,

PONUMBER TYPE VBKD-BSTKD, "PO NUMBER

PODATE TYPE VBKD-BSTDK, "PO DATE

ZTERM TYPE VBKD-ZTERM, "PAYMENT TERMS

INVOICENO TYPE VBRP-VBELN.

PARAMETERS : XVBELN TYPE VBELN.

*

*

SELECT VBELN

POSNR

ARKTX

FKIMG

AUBEL

AUPOS

FROM VBRP

INTO CORRESPONDING FIELDS OF TABLE IT_ITEM

WHERE VBELN = XVBELN AND UEPOS = '000000'.

**

**

LOOP AT IT_ITEM INTO W_ITEM.

*INVOICE NO

MOVE W_ITEM-VBELN TO INVOICENO.

*DESCRIPTION

MOVE W_ITEM-ARKTX TO W_FINAL-ARKTX.

**TOTAL QUANTITY IN KGS

MOVE W_ITEM-FKIMG TO W_FINAL-FKIMG.

*PO NUMBER

SELECT SINGLE BSTKD FROM VBKD

INTO W_ITEM-BSTKD

WHERE VBELN EQ W_ITEM-AUBEL.

MOVE W_ITEM-BSTKD TO PONUMBER.

*PO DATE

SELECT SINGLE BSTDK FROM VBKD

INTO W_ITEM-BSTDK

WHERE VBELN EQ W_ITEM-AUBEL.

MOVE W_ITEM-BSTDK TO PODATE.

**

SELECT SINGLE KNUMV FROM VBRK INTO W_FINAL-KNUMV WHERE VBELN = W_ITEM-VBELN.

**SELLING RATE/KG

SELECT SINGLE KBETR FROM KONV INTO W_FINAL-KBETR WHERE KNUMV = W_FINAL-KNUMV

AND KPOSN = W_ITEM-POSNR AND KSCHL = 'PR00'.

**TOTAL TARIFF VALUE

W_FINAL-TARIFF = W_FINAL-KBETR * W_ITEM-FKIMG.

SELECT SINGLE KBETR FROM KONV INTO W_FINAL-KWERT WHERE KNUMV = W_FINAL-KNUMV

AND KPOSN = W_ITEM-POSNR AND KSCHL = 'JEXT'.

*TOTAL DUTY PAYABLE

W_FINAL-DUTY = W_FINAL-KWERT / 10.

**AMOUNT

W_FINAL-AMOUNT = W_FINAL-TARIFF + W_FINAL-DUTY.

*TOTAL DUTY FOR CESS&EDCESS

TOTALDUTY = TOTALDUTY + W_FINAL-DUTY.

APPEND W_FINAL TO T_FINAL..

CLEAR W_FINAL.

ENDLOOP.

*CESS

CESS = TOTALDUTY * 2 / 100.

*EDCESS

EDCESS = TOTALDUTY * 1 / 100..

*TOTAL VALUE AT FOOTER

TOTAL = W_FINAL-AMOUNT + CESS + EDCESS.

*VAT

VAT = TOTAL * 4 / 100.

*FREIGHT

*GROSS TOTAL

GROSSTOTAL = TOTAL + VAT.

***************************************************************

CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'

EXPORTING

FORMNAME = 'ZSF_SD_INVOICE1'

VARIANT = ' '

DIRECT_CALL = ' '

IMPORTING

FM_NAME = FM_NAM

EXCEPTIONS

NO_FORM = 1

NO_FUNCTION_MODULE = 2

OTHERS = 3

.

IF SY-SUBRC <> 0.

MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

CALL FUNCTION FM_NAM

EXPORTING

  • ARCHIVE_INDEX =

  • ARCHIVE_INDEX_TAB =

  • ARCHIVE_PARAMETERS =

  • CONTROL_PARAMETERS =

  • MAIL_APPL_OBJ =

  • MAIL_RECIPIENT =

  • MAIL_SENDER =

  • OUTPUT_OPTIONS =

  • USER_SETTINGS = 'X'

TOTALDUTY = TOTALDUTY

CESS = CESS

EDCESS = EDCESS

TOTAL = TOTAL

PONUMBER = PONUMBER

PODATE = PODATE

GROSSTOTAL = GROSSTOTAL

VAT = VAT

INVOICENO = INVOICENO

  • IMPORTING

  • DOCUMENT_OUTPUT_INFO =

  • JOB_OUTPUT_INFO =

  • JOB_OUTPUT_OPTIONS =

TABLES

S_FINAL = T_FINAL

  • EXCEPTIONS

  • FORMATTING_ERROR = 1

  • INTERNAL_ERROR = 2

  • SEND_ERROR = 3

  • USER_CANCELED = 4

  • OTHERS = 5

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Srinivas,

whenever quantity and currency fields are displayed, we need to give the reference field also. say 'VRKME' is the reference field for 'FKIMG'.

so in the global defn click on 'Curr/Quan filed' tab and give the field name as w_final-fkimg and reference field as w_final-vrkme and data type as QUAN.

you need to have this field in your structure zform1 also, and in the selection also in your program.

Regards,

Vidya.

Former Member
0 Kudos

Thanku very much for ur answer.now im getting values.

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Srinivas

Just define that field as a char field of the same length,your problem should b solved.

Reward points if helpful.

Regards

Zarina