Two selection option-variables for the same object
Hi,
I'm using two selection-option variables for the same characteristic in my query:
One is authorization variable and the other is used for restrictions (filter) in a selection screen.
I get an error: SELOPT/Query variable .... does not allow any further selections.
If a selection option-variable is used, no additional selections can be specified for this characteristic in this element.
Is there a way to overcome this problem?
Thanks,
Hagit
Hi,
I have solved the problem by changing the authorization object (in RSECADMIN) from range to single value and also the variable in BEx from selection single value.
To be more clear:
object in RSECADMIN was: infoobject BT var1 - var5
I have changed it to:
infoobject EQ var1
infoobject EQ var2
infoobject EQ var3
infoobject EQ var4
infoobject EQ var5
Hope this helps.
Hagit
Similar Messages
-
Error while using selection option variable in the selection screen
Hi All,
I am facing an issue while using selection option variable in the selection screen for one of my reports.
Scenario: For the field "Region From" we need to have wild card logic () in tes selection screen, for example if we put "BE" in the selection screen for the field Region From then the query should be executed only for those "Region From" values which begin from "BE".
Approach: For the above requirement I have made a selection option variable for "Region From". This allows use wild card
But when the report is executed we get the following error:
"System error in program CL_RSR_REQUEST. Invalid filter on ETVRGNFR".
(ETVRGNFR is technical name of the info object Region From)
Though the report is executed it displays all the values for the field "Region From" irrespective of the selection given in the selection screen.
Please give suggestions / alternate solutions to crack this issue.
Thanks in advance
Regards
Priyanka.Hi,
Try to use a variable of type Customer Exit and do the validation inside the exit to display according to your request.
This is just my view, i am not sure if u are already using this or Char. Variable.
Cheers.
Ranga. -
Select-option + ALV on the same screen
hi,
how can we can get Select-option + ALV on the same screen.
Thanks,
Gauravhi gaurav,
Use the following code...It works...
TABLES: vbrk.
*CONSTANTS
CONSTANTS :
c_x(1) TYPE c VALUE 'X',
c_zxto TYPE vbak-auart VALUE 'ZXTO',
c_e TYPE spras VALUE 'E',
c_000000 TYPE posnr VALUE '000000',
c_ship_to TYPE parvw VALUE 'WE'. "Ship To Party
Table Types
TYPES: BEGIN OF ty_vbrk_vbrp,
vbeln TYPE vbrk-vbeln, "Billing doc
posnr TYPE vbrp-posnr, "Billing item
aubel TYPE vbrp-aubel, "Sales order
waerk TYPE vbrk-waerk, "Doc currency
mvgr1 TYPE vbrp-mvgr1, "Material group 1
mvgr3 TYPE vbrp-mvgr3, "Material group 3
mvgr4 TYPE vbrp-mvgr4, "Material group 4
matnr TYPE vbrp-matnr, "Material no
ntgew TYPE vbrp-ntgew, "Net wt
gewei TYPE vbrp-gewei, "Wt unit
kzwi1 TYPE vbrp-kzwi1, "Subtotal 1
kursk TYPE vbrp-kursk, "Exchange rate
END OF ty_vbrk_vbrp.
TYPES: BEGIN OF ty_data,
land1 TYPE vbpa-land1,
landx TYPE t005t-landx,
mvgr3 TYPE vbrp-mvgr3,
mvgr4 TYPE vbrp-mvgr4,
bezei3 TYPE tvm3t-bezei,
bezei4 TYPE tvm4t-bezei,
ntgew_tea_bag TYPE vbrp-ntgew,
ntgew_pkt_tea TYPE vbrp-ntgew,
ntgew_bulk_tea TYPE vbrp-ntgew,
kzwi1_tea_bag TYPE vbrp-kzwi1, "Subtotal 1 Tea Bag
kzwi1_pkt_tea TYPE vbrp-kzwi1, "Subtotal 1 Pkt Tea
kzwi1_bulk_tea TYPE vbrp-kzwi1, "Subtotal 1 Bulk Tea
ntgew_tot TYPE vbrp-ntgew,
kzwi1_tot TYPE vbrp-kzwi1,
line_color(4) TYPE c, "For line color
END OF ty_data.
TYPES: BEGIN OF ty_vbpa,
vbeln TYPE vbpa-vbeln,
land1 TYPE vbpa-land1,
END OF ty_vbpa.
TYPES: BEGIN OF ty_t005t,
land1 TYPE t005t-land1,
landx TYPE t005t-landx,
END OF ty_t005t.
TYPES: BEGIN OF ty_tvm3t,
mvgr3 TYPE tvm3-mvgr3,
bezei TYPE tvm3t-bezei,
END OF ty_tvm3t.
TYPES: BEGIN OF ty_tvm4t,
mvgr4 TYPE tvm4-mvgr4,
bezei TYPE tvm4t-bezei,
END OF ty_tvm4t.
DATA: it_vbrk_vbrp TYPE STANDARD TABLE OF ty_vbrk_vbrp,
wa_vbrk_vbrp TYPE ty_vbrk_vbrp,
it_vbpa TYPE STANDARD TABLE OF ty_vbpa,
wa_vbpa TYPE ty_vbpa,
it_data TYPE STANDARD TABLE OF ty_data,
wa_data TYPE ty_data,
it_t005t TYPE STANDARD TABLE OF ty_t005t,
wa_t005t TYPE ty_t005t,
it_tvm3t TYPE STANDARD TABLE OF ty_tvm3t,
wa_tvm3t TYPE ty_tvm3t,
it_tvm4t TYPE STANDARD TABLE OF ty_tvm4t,
wa_tvm4t TYPE ty_tvm4t.
Global data for grand total
DATA:
w_tot_ntgew_tea_bag TYPE vbrp-ntgew,
w_tot_ntgew_pkt_tea TYPE vbrp-ntgew,
w_tot_ntgew_bulk_tea TYPE vbrp-ntgew,
w_tot_ntgew_tot TYPE vbrp-ntgew,
w_tot_kzwi1_tea_bag TYPE vbrp-kzwi1,
w_tot_kzwi1_pkt_tea TYPE vbrp-kzwi1,
w_tot_kzwi1_bulk_tea TYPE vbrp-kzwi1,
w_tot_kzwi1_tot TYPE vbrp-kzwi1.
Global data definitions for ALV
DATA :
ALV Grid container
w_alv_container TYPE REF TO cl_gui_custom_container,
ALV Grid
w_alv_grid TYPE REF TO cl_gui_alv_grid,
w_layo TYPE lvc_s_layo, "For layout
wt_fieldcat TYPE lvc_t_fcat, "For field catalog
okcode TYPE okcode, "OK Code
w_to(2) TYPE c,
w_title TYPE string.
---- START OF SELECTION SCREEN -
SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
Billing Date
SELECT-OPTIONS: s_fkdat FOR vbrk-fkdat MEMORY ID vf OBLIGATORY no intervals.
SELECTION-SCREEN:SKIP 1.
SELECTION-SCREEN: END OF BLOCK b1.
---- END OF SELECTION SCREEN -
---- EVENT START-OF-SELECTION -
START-OF-SELECTION.
Get billing data from Delivery header(VBRK) and item (VBRP)
PERFORM get_billing_data.
Get ship-to country
PERFORM get_ship_to_data.
Get material group description 3
PERFORM get_material_group_3.
Get material group description 4
PERFORM get_material_group_4.
Form the ALV Grid title
PERFORM form_title.
Process data
PERFORM process_data.
Populate text descriptions
PERFORM populate_description.
---- EVENT END-OF-SELECTION -
END-OF-SELECTION.
Set the text to when date high is there
IF NOT s_fkdat-high IS INITIAL.
w_to = 'to'(c16).
ENDIF.
Call the scren 9000 for ALV Display
CALL SCREEN 9000.
*& Form get_billing_data
Get billing data from Delivery header(VBRK) and item (VBRP)
& store in internal table it_vbrk_vbrp
FORM get_billing_data .
REFRESH: it_vbrk_vbrp.
Select Billing data by joining VBRK & VBRP and store in it_vbrk_vbrp
SELECT a~vbeln
b~posnr
b~aubel
a~waerk
b~mvgr1
b~mvgr3
b~mvgr4
b~matnr
b~ntgew
b~gewei
b~kzwi1
b~kursk
FROM vbrk AS a INNER JOIN vbrp AS b
ON avbeln = bvbeln
INTO TABLE it_vbrk_vbrp
WHERE a~fkdat IN s_fkdat
Consider only non-deleted document
AND fksto = space
Billing doc type should be ZXTB
AND fkart = 'ZXTB'
AND pstyv = c_zxto.
*IF sy-subrc <> 0.
*MESSAGE i999(zttl) WITH 'No data is there'(m06).
*LEAVE LIST-PROCESSING.
*ENDIF.
ENDFORM. " get_billing_data
*& Form get_ship_to_data
Get Ship-To party data
FORM get_ship_to_data .
DATA: l_it_vbpa TYPE STANDARD TABLE OF ty_vbpa.
REFRESH: it_vbpa, it_t005t.
IF NOT it_vbrk_vbrp[] IS INITIAL.
SELECT vbeln
land1
FROM vbpa
INTO TABLE it_vbpa
FOR ALL ENTRIES IN it_vbrk_vbrp
WHERE vbeln = it_vbrk_vbrp-aubel
AND posnr = c_000000
AND parvw = c_ship_to.
IF sy-subrc <> 0.
MESSAGE i999(zttl) WITH 'Exporter country not maintained'(m02).
LEAVE LIST-PROCESSING.
ELSE.
SORT it_vbpa BY vbeln.
Create an unique and sorted driver table
l_it_vbpa[] = it_vbpa[].
SORT l_it_vbpa BY land1.
DELETE ADJACENT DUPLICATES FROM l_it_vbpa COMPARING land1.
IF NOT l_it_vbpa[] IS INITIAL.
Get the country description from T005t table
SELECT land1
landx
FROM t005t
INTO TABLE it_t005t
FOR ALL ENTRIES IN l_it_vbpa
WHERE spras = c_e
AND land1 = l_it_vbpa-land1.
IF sy-subrc = 0.
SORT it_t005t BY land1.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDFORM. " get_ship_to_data
*& Form get_material_group_3
Get material group 3
FORM get_material_group_3 .
DATA: l_it_vbrk_vbrp TYPE STANDARD TABLE OF ty_vbrk_vbrp.
REFRESH: it_tvm3t.
Create an unique and sorted driver table
l_it_vbrk_vbrp[] = it_vbrk_vbrp[].
SORT l_it_vbrk_vbrp BY mvgr3.
DELETE ADJACENT DUPLICATES FROM l_it_vbrk_vbrp COMPARING mvgr3.
IF NOT l_it_vbrk_vbrp[] IS INITIAL.
SELECT mvgr3
bezei
FROM tvm3t
INTO TABLE it_tvm3t
FOR ALL ENTRIES IN l_it_vbrk_vbrp
WHERE mvgr3 = l_it_vbrk_vbrp-mvgr3.
IF sy-subrc = 0.
SORT it_tvm3t BY mvgr3.
ENDIF.
ENDIF.
ENDFORM. " get_material_group_3
*& Form get_material_group_4
Get material group 4
FORM get_material_group_4 .
DATA: l_it_vbrk_vbrp TYPE STANDARD TABLE OF ty_vbrk_vbrp.
REFRESH: it_tvm4t.
Create an unique and sorted driver table
l_it_vbrk_vbrp[] = it_vbrk_vbrp[].
SORT l_it_vbrk_vbrp BY mvgr4.
DELETE ADJACENT DUPLICATES FROM l_it_vbrk_vbrp COMPARING mvgr4.
IF NOT l_it_vbrk_vbrp[] IS INITIAL.
SELECT mvgr4
bezei
FROM tvm4t
INTO TABLE it_tvm4t
FOR ALL ENTRIES IN l_it_vbrk_vbrp
WHERE mvgr4 = l_it_vbrk_vbrp-mvgr4.
IF sy-subrc = 0.
SORT it_tvm4t BY mvgr4.
ENDIF.
ENDIF.
ENDFORM. " get_material_group_4
*& Form process_data
Process the data and do summation and populate final display table
FORM process_data .
LOOP AT it_vbrk_vbrp INTO wa_vbrk_vbrp.
CLEAR: wa_data, wa_vbpa.
READ TABLE it_vbpa INTO wa_vbpa WITH KEY
vbeln = wa_vbrk_vbrp-aubel
BINARY SEARCH.
IF sy-subrc = 0.
wa_data-land1 = wa_vbpa-land1.
ENDIF.
wa_data-mvgr3 = wa_vbrk_vbrp-mvgr3.
wa_data-mvgr4 = wa_vbrk_vbrp-mvgr4.
Do an unit conversion of the quamtity
CALL FUNCTION 'UNIT_CONVERSION_SIMPLE'
EXPORTING
input = wa_vbrk_vbrp-ntgew
NO_TYPE_CHECK = 'X'
ROUND_SIGN = ' '
unit_in = wa_vbrk_vbrp-gewei
unit_out = 'TO' "Metric tonn
IMPORTING
output = wa_vbrk_vbrp-ntgew
EXCEPTIONS
conversion_not_found = 1
division_by_zero = 2
input_invalid = 3
output_invalid = 4
overflow = 5
type_invalid = 6
units_missing = 7
unit_in_not_found = 8
unit_out_not_found = 9
OTHERS = 10.
IF sy-subrc <> 0.
wa_vbrk_vbrp-ntgew = wa_vbrk_vbrp-ntgew.
ENDIF.
Convert the currency from Customer currency to local
currency by multiplying with kursk
wa_vbrk_vbrp-kzwi1 = wa_vbrk_vbrp-kzwi1 * wa_vbrk_vbrp-kursk.
Convert the amount to Lacks by dividing with 100000
wa_vbrk_vbrp-kzwi1 = wa_vbrk_vbrp-kzwi1 / 100000. "DV1K905028
When MVGR1 is between A to F use the amount as TEA_BAG
IF wa_vbrk_vbrp-mvgr1 BETWEEN 'A' AND 'F'.
wa_data-ntgew_tea_bag = wa_vbrk_vbrp-ntgew.
wa_data-kzwi1_tea_bag = wa_vbrk_vbrp-kzwi1.
ENDIF.
When MVGR1 is between G to L use the amount as TEA_BAG
IF wa_vbrk_vbrp-mvgr1 BETWEEN 'G' AND 'L'.
wa_data-ntgew_pkt_tea = wa_vbrk_vbrp-ntgew.
wa_data-kzwi1_pkt_tea = wa_vbrk_vbrp-kzwi1.
ENDIF.
When MVGR1 is between G to L use the amount as TEA_BAG
IF wa_vbrk_vbrp-mvgr1 = 'M'.
wa_data-ntgew_bulk_tea = wa_vbrk_vbrp-ntgew.
wa_data-kzwi1_bulk_tea = wa_vbrk_vbrp-kzwi1.
ENDIF.
COLLECT wa_data INTO it_data.
ENDLOOP.
ENDFORM. " process_data
*& Form populate_description
Populate the description fields
FORM populate_description .
LOOP AT it_data INTO wa_data.
CLEAR: wa_t005t.
READ TABLE it_t005t INTO wa_t005t WITH KEY land1 = wa_data-land1
BINARY SEARCH.
IF sy-subrc = 0.
wa_data-landx = wa_t005t-landx.
ENDIF.
Read description of Material group 3
CLEAR wa_tvm3t.
READ TABLE it_tvm3t INTO wa_tvm3t WITH KEY
mvgr3 = wa_data-mvgr3
BINARY SEARCH.
IF sy-subrc = 0.
wa_data-bezei3 = wa_tvm3t-bezei.
ENDIF.
Read description of Material group 4
CLEAR wa_tvm4t.
READ TABLE it_tvm4t INTO wa_tvm4t WITH KEY
mvgr4 = wa_data-mvgr4
BINARY SEARCH.
IF sy-subrc = 0.
wa_data-bezei4 = wa_tvm4t-bezei.
ENDIF.
Get the grand totals
wa_data-ntgew_tot = wa_data-ntgew_tea_bag
+ wa_data-ntgew_pkt_tea
+ wa_data-ntgew_bulk_tea.
wa_data-kzwi1_tot = wa_data-kzwi1_tea_bag
+ wa_data-kzwi1_pkt_tea
+ wa_data-kzwi1_bulk_tea.
MODIFY it_data FROM wa_data TRANSPORTING landx
bezei3
bezei4
ntgew_tot
kzwi1_tot.
Summattion of grand totals
w_tot_ntgew_tea_bag = w_tot_ntgew_tea_bag + wa_data-ntgew_tea_bag.
w_tot_ntgew_pkt_tea = w_tot_ntgew_pkt_tea + wa_data-ntgew_pkt_tea.
w_tot_ntgew_bulk_tea = w_tot_ntgew_bulk_tea + wa_data-ntgew_bulk_tea.
w_tot_ntgew_tot = w_tot_ntgew_tot + wa_data-ntgew_tot.
w_tot_kzwi1_tea_bag = w_tot_kzwi1_tea_bag + wa_data-kzwi1_tea_bag.
w_tot_kzwi1_pkt_tea = w_tot_kzwi1_pkt_tea + wa_data-kzwi1_pkt_tea.
w_tot_kzwi1_bulk_tea = w_tot_kzwi1_bulk_tea + wa_data-kzwi1_bulk_tea.
w_tot_kzwi1_tot = w_tot_kzwi1_tot + wa_data-kzwi1_tot.
ENDLOOP.
Append a grand Total row at the end
CLEAR wa_data.
wa_data-landx = 'Grand Total:'.
wa_data-ntgew_tea_bag = w_tot_ntgew_tea_bag.
wa_data-ntgew_pkt_tea = w_tot_ntgew_pkt_tea.
wa_data-ntgew_bulk_tea = w_tot_ntgew_bulk_tea.
wa_data-ntgew_tot = w_tot_ntgew_tot.
wa_data-kzwi1_tea_bag = w_tot_kzwi1_tea_bag.
wa_data-kzwi1_pkt_tea = w_tot_kzwi1_pkt_tea.
wa_data-kzwi1_bulk_tea = w_tot_kzwi1_bulk_tea.
wa_data-kzwi1_tot = w_tot_kzwi1_tot.
wa_data-line_color = 'C310'.
APPEND wa_data TO it_data.
ENDFORM. " populate_description
*& Module STATUS_9000 OUTPUT
Initialise PF-STATUS and title
MODULE status_9000 OUTPUT.
SET PF-STATUS 'MAIN9000'.
SET TITLEBAR 'TITLE_9000'.
ENDMODULE. " STATUS_9000 OUTPUT
*& Module initialize_9000 OUTPUT
text
MODULE initialize_9000 OUTPUT.
Call the ALV grid to display data
SELECTION-SCREEN: BEGIN OF BLOCK B2 WITH FRAME TITLE text-001.
Billing Date
SELECT-OPTIONS: s_fkdat1 FOR vbrk-fkdat MEMORY ID vf OBLIGATORY NO-EXTENSION.
SELECTION-SCREEN:SKIP 1.
SELECTION-SCREEN: END OF BLOCK B2.
PERFORM display_alv_grid.
ENDMODULE. " initialize_9000 OUTPUT
*& Module USER_COMMAND_9000 INPUT
Module to handle User Command
MODULE user_command_9000 INPUT.
CASE okcode.
WHEN 'BACK'.
SET SCREEN 0.
CLEAR okcode.
LEAVE SCREEN.
WHEN 'CANCEL'.
SET SCREEN 0.
CLEAR okcode.
LEAVE SCREEN.
WHEN 'EXIT'.
CLEAR okcode.
LEAVE PROGRAM.
WHEN OTHERS.
ENDCASE.
ENDMODULE. " USER_COMMAND_9000 INPUT
*& Form display_alv_grid
Display the data in ALV Grid
FORM display_alv_grid .
IF w_alv_container IS INITIAL.
Create the alv container object
CREATE OBJECT w_alv_container
EXPORTING
container_name = 'ALV_GRID'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5
OTHERS = 6.
IF sy-subrc <> 0.
MESSAGE e999(zttl) WITH 'Problem in ALV display'(t04).
ENDIF.
Create the ALV grid object. The parent is the ALV container
CREATE OBJECT w_alv_grid
EXPORTING
i_parent = w_alv_container
EXCEPTIONS
error_cntl_create = 1
error_cntl_init = 2
error_cntl_link = 3
error_dp_create = 4
OTHERS = 5.
IF sy-subrc <> 0.
MESSAGE e999(zttl) WITH 'Problem in ALV display'(t04).
ENDIF.
This subrotine creates the field catalog and
store in internal table lt_fieldcat
PERFORM prepare_fieldcat CHANGING wt_fieldcat.
Layout design
w_layo-no_toolbar = ''.
Not to allow totaling feature
w_layo-no_totline = c_x.
Report title
w_layo-grid_title = text-004.
w_layo-grid_title = w_title.
w_layo-zebra = c_x. "Alternating line color (striped)
w_layo-cwidth_opt = c_x. "Optimize column width
w_layo-sel_mode = 'A'. "Selection Mode
Name of the color field
w_layo-info_fname = 'LINE_COLOR'."For row color
Call the method to display the data in ALV grid
CALL METHOD w_alv_grid->set_table_for_first_display
EXPORTING
i_save = 'A'
is_layout = w_layo
CHANGING
it_outtab = it_data[]
it_fieldcatalog = wt_fieldcat
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE e999(zttl) WITH text-t04.
ENDIF.
ELSE.
If the container & grid object is alreadt there reuse them
CALL METHOD w_alv_grid->refresh_table_display
EXCEPTIONS
finished = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE e999(zttl) WITH text-t04.
ENDIF.
ENDIF.
IF okcode = 'CANCEL'.
EXIT.
ENDIF.
ENDFORM. " display_alv_grid
*& Form prepare_fieldcat
Prepare the list of fields to be displayed *
<--P_WT_FIELDCAT text
FORM prepare_fieldcat CHANGING pt_fieldcat TYPE lvc_t_fcat.
DATA : lx_fcat TYPE lvc_s_fcat.
REFRESH: pt_fieldcat.
**List of fields to be displayed should be added in pt_fieldcat
Customer PO no
CLEAR lx_fcat.
lx_fcat-fieldname = 'LANDX'.
lx_fcat-ref_field = 'T005T'.
lx_fcat-ref_table = 'T005T'.
lx_fcat-coltext = 'Market Name'(c01).
lx_fcat-seltext = text-c01.
APPEND lx_fcat TO pt_fieldcat.
Flavour type
CLEAR lx_fcat.
lx_fcat-fieldname = 'BEZEI3'.
lx_fcat-ref_field = 'BEZEI'.
lx_fcat-ref_table = 'TVM3'.
lx_fcat-coltext = 'Flavour Type'(c02).
lx_fcat-seltext = text-c02.
APPEND lx_fcat TO pt_fieldcat.
Tea type
CLEAR lx_fcat.
lx_fcat-fieldname = 'BEZEI4'.
lx_fcat-ref_field = 'BEZEI4'.
lx_fcat-ref_table = 'TVM4'.
lx_fcat-coltext = 'Tea Type.'(c03).
lx_fcat-seltext = text-c03.
APPEND lx_fcat TO pt_fieldcat.
Tea Bag Quantity in KG
CLEAR lx_fcat.
lx_fcat-fieldname = 'NTGEW_TEA_BAG'.
lx_fcat-ref_field = 'NTGEW'.
lx_fcat-ref_table = 'VBRP'.
lx_fcat-coltext = 'Tea Bag(MT)'(c04).
lx_fcat-seltext = text-c04.
APPEND lx_fcat TO pt_fieldcat.
PKT Tea Quantity in KG
CLEAR lx_fcat.
lx_fcat-fieldname = 'NTGEW_PKT_TEA'.
lx_fcat-ref_field = 'NTGEW'.
lx_fcat-ref_table = 'VBRP'.
lx_fcat-coltext = 'PKT Tea(MT)'(c05).
lx_fcat-seltext = text-c05.
APPEND lx_fcat TO pt_fieldcat.
Bulk Tea Quantity in MT
CLEAR lx_fcat.
lx_fcat-fieldname = 'NTGEW_BULK_TEA'.
lx_fcat-ref_field = 'NTGEW'.
lx_fcat-ref_table = 'VBRP'.
lx_fcat-coltext = 'Bulk Tea(MT)'(c06).
lx_fcat-seltext = text-c06.
APPEND lx_fcat TO pt_fieldcat.
Total Quantity in MT
CLEAR lx_fcat.
lx_fcat-fieldname = 'NTGEW_TOT'.
lx_fcat-ref_field = 'NTGEW'.
lx_fcat-ref_table = 'VBRP'.
lx_fcat-coltext = 'Total(MT)'(c07).
lx_fcat-seltext = text-c07.
APPEND lx_fcat TO pt_fieldcat.
Tea Bag Quantity in KG
CLEAR lx_fcat.
lx_fcat-fieldname = 'KZWI1_TEA_BAG'.
lx_fcat-ref_field = 'KZWI1'.
lx_fcat-ref_table = 'VBRP'.
lx_fcat-coltext = 'Tea Bag(FOB-Lacs)'(c08).
lx_fcat-seltext = text-c08.
APPEND lx_fcat TO pt_fieldcat.
PKT Tea Price in Lakh
CLEAR lx_fcat.
lx_fcat-fieldname = 'KZWI1_PKT_TEA'.
lx_fcat-ref_field = 'KZWI1'.
lx_fcat-ref_table = 'VBRP'.
lx_fcat-coltext = 'PKT Tea(FOB-Lacs)'(c09).
lx_fcat-seltext = text-c09.
APPEND lx_fcat TO pt_fieldcat.
PKT Tea Quantity in KG
CLEAR lx_fcat.
lx_fcat-fieldname = 'KZWI1_BULK_TEA'.
lx_fcat-ref_field = 'KZWI1'.
lx_fcat-ref_table = 'VBRP'.
lx_fcat-coltext = 'Bulk Tea(FOB-Lacs)'(c10).
lx_fcat-seltext = text-c10.
APPEND lx_fcat TO pt_fieldcat.
Total amount
CLEAR lx_fcat.
lx_fcat-fieldname = 'KZWI1_TOT'.
lx_fcat-ref_field = 'KZWI1'.
lx_fcat-ref_table = 'VBRP'.
lx_fcat-coltext = 'Total(FOB-Lacs)'(c11).
lx_fcat-seltext = text-c11.
APPEND lx_fcat TO pt_fieldcat.
ENDFORM. " prepare_fieldcat
*& Form form_title
Form the ALV Title
FORM form_title .
DATA: l_date(10) TYPE c.
CONCATENATE s_fkdat-low6(2) s_fkdat-low4(2) s_fkdat-low(4)
INTO l_date SEPARATED BY '/'.
CONCATENATE 'TTD - Statement of Export' '-From' l_date INTO
w_title SEPARATED BY space.
CLEAR l_date.
IF NOT s_fkdat-high IS INITIAL.
CONCATENATE s_fkdat-high6(2) s_fkdat-high4(2) s_fkdat-high(4)
INTO l_date SEPARATED BY '/'.
CONCATENATE w_title 'to' l_date INTO w_title SEPARATED BY space.
ENDIF.
ENDFORM. " form_title -
Various Interpolator for the same object
Hi !!...I need to use 2 interpolators for the same object, but i dont know how to do it without make a cyclic graph...Any ideas ?
Thanks a lot!.
CA.Hi,
the scene graph should have the following structure:
[arbitrary Group]
|
|
[TransformGroup1] <- [Interpolator1]
|
|
[TransformGroup2] <- [Interpolator2]
|
|
[object to transform]
You have to make sure that two different TransformGroups are used, otherwise the Interpolator scheduled as the last one will overwrite the changes previously made by the other Interpolator.
The order of the TransformGroups is also important, especially if a rotation or scale is involved.
Regards
Fleischer -
Multiple Transports for the Same Object.
I have ABAP program 123 and I make a change, create transport A and release the transport. I do not request transport A go to production.
I then modify ABAP program 123 again, create transport B and release the transport. I do not request transport B go to production.
Now I request transport A go to production.
Can someone explain to me why the changes in transport B are included when transport A is moved to production?
I thought each transport would be at its own change level.
Thank-you.I can guarantee all of you that when Transport A was moved, it contained changes that were made in Transport B.
Surely you understand that Thomas is correct and that there's a logical reason, not related to transport layer configuration, for the issue? You CAN have multiple transports open for the same object without a lock by forcing it but check the dates as already suggested... -
Sales Deal with two different validation dates for the same material
Hi SAPers,
I am trying to create a u201CSales Dealu201D VB31, for the same material/condition, but with two different validation dates. After the creation of the first record, I select u201CNew conditionu201D button, but the system give me the message VK104, u201Cthe condition is being processed in the current session.u201D.
How can I solve this issue?
Thanks in advance.
PedroWe can't have multiple records for the same condition and key values valid on the same date. The condition end date is part of the primary key in the database table. The date ranges between the records cannot overlap. When you create a new record, usually the end date is set to 12/31/9999 by default. If you need to have this deal to end on a different date and a new deal to start afterwards, then first you need to change 12/31/9999 to a different date.
Also usually I try to exit the screen between the transactions. -
Two string references pointing to the same object
Look at the following code snippet String s1 = "hello";
String s2 = "world";
String s3 = "welcome";
String s4 = "here";
String s5 = "hello";
They say that references s1 and s5 point to the same object "hello".
At run time after creating objects from s1 to s4 how the Java run time knows that there is already an object "hello" and assigns a differernt reference.When the jvm load the class file, all suchconstants
found in the class are loaded in a global constant
pool. when you assign the constant to a variable,it
uses the same one from the constant pool.Suppose I intialize a string by getiing input
nput from the console which already exists, in that
case a new object will be created or the existing one
be used.A new object will always be created in that case, but you can get a reference to the string in the pool by calling intern. See the javadoc for intern in the String class.
Kaj -
Can we have multiple transports for the same object.
Hi guys,
Can we have multiple transports for same object in dev system. Can anyone tell me how can this be done.
ThanksIts not possible for the same development object. Only 1 person can access an object at a time and if mutiple users modify an object new TASKs are created under the same TRANSPORT.
Only after releasing the tr you can create a new tr on the same object.
Message was edited by:
Abhishek Jolly -
Multiple inserts for the same object
We have observed that in certain cases, the same object is attempted to be inserted twice, resulting in Primary Key violation.
Here is one example -
A(1->1)B, unidirectional, A has the foreign key to B
new B
copyB = register(B) (also assign sequence number)
new A1, A2
A1.set(copyB), A2.set(copyB)
register(A1), register(A2)(also assign sequence number)
commit
it tries to insert the same B twice.
any clues whats wrong here?
thanksAny chance your 1:1 from A to B is marked as privately-owned?
This would indicate to TopLink that the object in each relationship is unique and should be inserted.
Doug -
Command to see host and static nat for the same object together
I have researched this but cannot find an answer. ASA running version 8.5.
When you create the config using object NAT you enter the commands as follows
object network <object name>
host x.x.x.x
nat (inside,outside) static y.y.y.y
When the config is displayed it separates the host and nat commands in two different sections of the config as follows
object network <object name>
host x.x.x.x
object network <object name>
nat (inside,outside) static y.y.y.y
Is there a command that will display it all together (like it was typed in)? Show NAT is something like what I am after but without all of the extra info such as translate_hits, untranslate_hits etc. I need this information but cleaning up the output of a show nat is going to be tough.
Any suggestions?
Thanks.Sorry, show nat detail is what I meant in the original post in place of show nat. Show nat detail still has all of the extra info I was trying to avoid. Guess I will be editing a text file.
Thanks for the reply. -
Require two different Financial Reports for the Same Financial Year - 2011
Hi Experts,
The financial Year of the client is from jan-Dec.The client needs different financial reports (P&L , B/S), one from Jan-Aug and another from Sept-Dec for the FY 2011 since the management of the company has changed from Sept-2011 onwards. So when tried to generate the financial reports from Sept-Dec , system shows the carry forward opening balances of income and expenses from Aug 2011 which they do not want. Since we have not done any closing activities at the end of aug-2011 this figure is bound to come. So in this scenario is there any possibilities to get a fresh financial reports from Sept to Dec 2011 where there should not be any opening balances of expenses and incomes for Sept 2011.
Since transferring of balances from income and expenses to retained earnings accounts has done yearly basis , how can we do this for the periods also or any other method to sort out this issue.
Hope my question is clear. if not pls revert with the queries.
Thanks in Advance,
ArabindaHi RP,
I have checked F.54 . Everything is ok in that report expect the Profit and Loss which are two differnt line item in that report and also calculated fields do not display in this report. But anyway this report meets most of the requirements.
Thank you very much.
regards,
Arabinda -
Two different vendor supplier for the same code
Hi,
We have the two different suppliers supply the material with same code with different values,
since they are customized products as per customer requirement,we are stuck up with how could it map into the BOM,
PPC persons always try it with change BOM or change in order,
How could be simplified?
With Regards,
DevendraHello Devendra
On the standard ERP, there is no way to map this scenario, however, using the DIMP industry solution there is a functionality called Parts Interchangeability.
Take a look on the following links where this functionality is described:
A&amp;D Manufacturer Part Number - Discrete Industries and Mill Products - SAP Library
Interchangeable Manufacturer Parts in MRP - Parts Interchangeability - SAP Library
BR
Caetano -
How to maintain two credit limits for the same customer.
We have two lines of business for the same company code. One customer is trading in two lines of business.
We want to maintain two credit limits for same customer. How is this possible.Hi,
Credit Limits are assigned to customer master in a credit control area, so a customer can have different credit limits for the different credit control areas.
(Please note that Credit Control Areas are normally assigned to company codes or sales area.)
But if you are having only one credit control area, then only one credit limit can apply.
However you can use the user exits to put any check you want for the customer. There are various user exits available for it like LVKMPTZZ,LVKMPFZ1,LVKMPFZ2 and LVKMPFZ3 in transaction SMOD
Regards,
Gaurav -
Imp: new session for the same user if idle for 4 mins. or else throw error
Dear All,
I have a requirement where for security reasons if a session remains idle for 4 mins. or more, it should redirect to login page. This is easy as there is a feature in apex itself under security in application properties. This works fine.
But I also don't want the users to start two active parallel sessions for the same user, and allow user to login only if the session for the user is idle for 4mins. or more or else display error message that the user has already logged.
A second in sequence, on submit process for this in page 101 when login button is hit is written for this. It is as follows:
declare
found boolean := false;
begin
for x in (SELECT a.apex_user from apex_workspace_activity_log a,apex_workspace_sessions b, (SELECT max(view_date) as maxdate FROM apex_workspace_activity_log where upper(apex_user)=upper(:P101_USERNAME) and APPLICATION_ID=120) maxresults, (SELECT max(session_created) as maxcreate FROM apex_workspace_sessions where upper(user_name)=upper(:P101_USERNAME)) maxsession where b.session_created=maxsession.maxcreate AND b.APEX_SESSION_ID!=:SESSION and upper(b.user_name)=upper(:P101_USERNAME) and b.APEX_SESSION_ID=a.APEX_SESSION_ID and a.seconds_ago<240 AND a.APPLICATION_ID=120 and a.view_date=maxresults.maxdate and rownum=1) loop
found:=true;
raise_application_error(-20000, 'Already Logged.');
exit;
end loop;
IF not found THEN
null;
END IF;
end;
But for some this reason this does not work as intended. Two users can login parallely.
When I trace the program, I see that it should catch the parallel user login. But it does not.
Is it some db cache issue? I don't know.
Kindly let me know how to fix this. It is crucial for us to achieve this.
Thanking in advance.
Regards,
Deepika.Dear Fateh,
Thanks for the reply.
The features of this plugin are:
Configurable timeout actions including alert, redirect, and logout
Optional and configurable warning message
Option to keep session alive if user isn’t truly idle. Special thanks to Martin D’Souza for a great idea on how to implement this feature.
But it cannot stop a new session for a user, if there is an active (in my definition apex_workspace_activity_log.seconds_ago<240) session already running for that user.
Regards,
Deepika. -
Different SBA DNS SRV entry for the same dns zone?
Hello,
I got here a testlab with one enterprise pool and one sba deployed. The Branch Site got also an DNS Server installed. Both are using the same dns zone "test.com".
Of course now i got different server for the same SRV Record _sipinternaltls._tcp.test.com - one for autodiscovery in the enterprise pool and one for the sba. Also I want to add the second one as failover srv + the DNS Server in the Enterprise Pool should
be used as a Forwarder.
Now I got some issues how to deploy several entries on two different dns server for the same zone.
1.) If I add manually the same zone + DNS SRV entries on the SBA the dns is somehow not resolving/forwarding the entries on the other dns server in ee to other servers which are not on my SBA dns.
2.) If I only pinpoint the SRV entries for _sipinternaltls._tcp.test.com (one for sba and failover for ee site) the dns won't resolve the second a record to the enterprise pool.
What is the Best Practise for DNS SBA? Always point to the enterprise pool and, therefore, no other configuration is needed?
Regards DrWhoI played a little bit around. Problem was that I can not add the pinpoint dns srv entries via gui. Aditionally the tutorials did not work as my DNS server for SBA is not on a domain controller. In the end I did this:
sbafe -> fqdn of my sba
eefe -> fqdn of my frontend of enterprise pool
dnscmd . /zoneadd _sipinternaltls._tcp.test.com. /primary /file _sipinternaltls._tcp.test.com.dns
dnscmd . /recordadd _sipinternaltls._tcp.test.com. @ SRV 0 0 5061 sbafe.test.com.
dnscmd . /recordadd _sipinternaltls._tcp.test.com. @ SRV 10 0 5061 eefe.test.com.
dnscmd . /zoneadd sbafe.test.com. /primary /file sbafe.test.com.dns
dnscmd . /recordadd sip.sbafe.test.com. @ A 192.168.10.220
dnscmd . /zoneadd eefe.test.com. /primary /file eefe.test.com.dns
dnscmd . /recordadd sip.eefe.test.com. @ A 192.168.0.40
Question is if that is a good best proctise or should the dns server within a zone contain the same records (Primary/Backup). The Client will then always hit the FE of the EE Pool first.
Also its quite a lot of work to setup.
Maybe you are looking for
-
Most Popular Items not working for document libraries
One of the new Library features is the "Most Popular Items" report. In the library tab you can click on the icon to in theory, see a list of the recent and total Views of an item: This does work in our environment to record views for wiki or publi
-
Simple question. VL31 allows me to create as many deliveries as I want against a Purchase Order, irrelevant of the quantity in the PO. The tolerance check against the PO quantity is performed at PGR. Same thing is true for MB31 : receiving against a
-
Is selectManyChoice supported when using ADF faces and ejb 3...
...in any release of JDev? Thanks in advance!
-
WebVPN will not send radius accounting
Hi Folks, I have setup a webvpn system, which works perfectly on a 2811. However, when I enable aaa accounting on the context, it seems to be enabled BUT the accounting packet is never sent. Debug shows this Aug 28 09:55:56 c2811-test 312: Aug 28 07:
-
Hi, I have recently updated to Windows 8.1 and my built-in HP TrueVision HD Webcam has stopped working properly. I have a HP ENVY dv6z-7200 CTO Notebook PC. I have tried using the Skype Desktop App and YouCam and the built in Windows Camera App and