Copy Check Boxes but Making them Unique
Hi Folks,
Is there any way to copy check boxes but NOT have to go into properties to change the number. We have over 700 check boxes to add to a PDF. We want each one to be the same size, so we'd like to create 1 then copy it. But when you do that, you have to go into properties and change the number or else when you actually place a check mark in the first box, it will also place one in the copied box. Is there an easy workaround?
BTW: Acrobat Professional 9 on a PC XP Professional.
Thx,
Sandy
Sandy:
Just saw your question today (July 9, 09). If you are still seeking a solution, try the following simple steps already built into Acrobat -
1) Create the first check box and set up all of its properties.
2) Right click on the check box and select "Place multiple fields..." option from the drop down
3) Follow the simple instructions on the "Create Multiple Copies of Fields" menu
4) Not only can you duplicate the fields down and across, but, the system will automatically keep all attributes and only change the field names by numbering them sequentially
Hope this helps.
Good luck!
Sujit Pal
www.skybases.com
Gilbert, AZ
Similar Messages
-
How do I tally values that only have a ticked Check Box next to them?
Hi Folks,
I'm new to Acrobat forms and have recently finished a complicated 7 page form for a client and I am quite pleased with it.
But the client has come back with the following request:
They want Check Boxes next to a series of values and, when a Check Box is ticked, it only adds that ticked value. To show what I mean, please see the below image.
So basically, there is a field on the left-hand side (Current Monthly Repayments) that tallies all the values - in my example this totals $50.00. Then, there is a field on the right-hand side (Future Monthly Repayments) that needs to tally only the values that have a ticked "Yes" Check Box next to them. In my example, this would produce a tally of $20.00.
Does anyone know how this could be done?
Thank youYes, that's perfect. Try the following custom calculation script:
// Custom calculation script for future monthly repayments field
(function () {
// Initialize variables
var i, cb, v, sum = 0;
// Loop through each row and add repayment value if Yes is checked
for (i = 1; i < 7; i += 1) {
// Get the value of the check box
cb = getField("CashFlowCheck" + i).valueAsString;
// Get the value of the repayment field, as a number
v = +getField("CashFlow" + i).value;
// Add the value to the sum if the check box is checked
if (cb === "Yes") {
sum += v;
// Set this field's value to the sum, rounded to the nearest cent
event.value = util.printf("%.2f", sum); -
Mulitible check boxes but only select one in each row who I do it with Acrobat Pro X?
Dear Forum Readers
First, if I should post my entry in the wrong forum, forgive me but I didn’t found the right place!
I start to learn about the Adobe Pro X to create a form with different checkboxes, everything goes very well but now I decide it would be better if I could only check one checkbox in each row (see picture) .
Each checkbox in each row has its own value from 1-4 (left checkbox=1 and right checkbox=4) and on the end of the form “Sub Total” all the value in each column who are checked I accounting together.
1. 1. First I change the check boxes into radio button and give them a different value. Now I can only select one radio button in each row like I want it. But if I go to the field “Sub Total” (properties > calculate > pick) to account the value from each column together then I only can select the whole radio button group and not a single radio button. So my idea doesn’t work because the result is wrong.
2.
2.T2. Then I got back and change the radio button again into check boxes. In each row I give the 4 check boxes the same name (so they act like radio buttons) and this works fine as well but with the same result as you read above. I could only “Pick” (properties > calculate > pick) the whole group of the check boxes and not only one and therefore my result at “Sub Total” is wrong again.
I search the internet as well but I couldn’t found any working solution.
Now I like to ask you kindly, is there somebody who can help me with the problem?
I need the form as you can see at the picture but it should be only possible to check one checkbox in each row. But on the time I should be able to calculate each single column together.
I would appreciate every idea (as simple as possible) because I am a beginner with Adobe Pro X.
Thank you very much in advance!!!
Nice regards
KlausDear Gkaiseril
Thank you very much for your answer!
This I fears already J
With JavaScript I have even less an idea than with the program Acrobat Pro XI. Is there not a other solution to solve this problem.
Is it may possible that’s you can show me how such a JavaScript could look like or you know may a existing script?
Anyway, thank your help.
Nice regards
Klaus -
It looks like this:
A. What can be done to improve performance?
B. What can be done by assessor to help performance?
C. Comments?
Issue is the text field below these items is not big enough. When I make it bigger, like in "A" it gets bigger but then overlaps the text in "B" and I can't move the text. Someone else created this form and I have no idea what A, B and C are but they are not Text Fields. They are just static text of some sort and I can't do anything with it.Hi,
Try making the subform that contains your fields flowed, this will allow them to not overlap, but you will probably have to add some margins (or some 'spacer' subforms) to get the appearance you had.
Regards
Bruce -
In Windows 7, Firefox 8.0 does not ask to save passwords, and does not save, them, even though I checked the box to save passwords. I have confirmed that clearing history is not on and that I am not in Private Browsing. This is so frustrating, it almost makes me want to go back to Vista. I have looked at all the suggestions to fix the problem in "Help" and have followed the suggestions, and none of them help.
I have the TX2 1012NR and its can upgrade just fine! Here is a few recommendations "only if u have the HP Upgrade program disks"
If you have them you can install a clean copy and delete everything... Do not use the use me first disk included because it prompts you to install an older BIOS.... Just use the windows 7 upgrade disk and start the process. The clean install clears your entire drive but does not void your warranty! When you use the use me first disk after the install it actually loads everything else needed to get you up in running. The touchscreen driver and the HP Mediasmart programs will have to be downloaded from the HP support site. Once again its recommended that if there were any programs installed delete them do not try to update them! This causes issues and countless errors. Specifically with touchscreen drivers etc uninstall them before installing the ones from HP support. I found this was not the easy way to do it but the best way... I also recommend that when doing any sort of BIOS update that you remove your Battery and leave it connected to a power cord only! Last but not least if you really mess up and its under warranty... Send it to HP they will set it back up to factory defaults under Windows Vista with the more up to date BIOS installed. I hope my information helps! Sure you might loose some programs but in the end your computer runs faster and smoother because all the programs installed are made for Windows 7.... Also they did release the Touch Pack for download from the Microsoft website here is a link telling more about the features and benefits and how to get it as it is a totally free download...
http://windowsteamblog.com/windows/b/windows7/archive/2009/05/27/introducing-the-microsoft-touch-pac...
Microsoft Link for download:
http://www.microsoft.com/downloads/details.aspx?FamilyID=b152fadd-82e4-4ddb-a46a-aebe49944428&displa... -
Hi
I am working on some forms for Teachers Reports it is a generic document for student reports. I have set the document in Indesign 6 and edited the pdf form in Acrobat Pro.
The form consists of Radio Buttons (Check Boxes) as they have to score the child between 1-4 and the teacher is only allowed to select 1 box from out of the 4 boxes (hence radio buttons) .
The problem we are having is that there might be 2-3 teachers that have to write and score each child's in a certain section of the report and they might use a PC or MAC to do this.
For some reason, some of the reports have changed the Radio Button "Check Boxes" to a "Circle" both in the PDF and when printing and they need it to be a Check box. (In indesign this was set to Check Box and to print as a Check box)
Some how after the teachers have used different computers the check boxes have changed to circles and we need to change them back to check boxes but is there a way to change them without having to go "Forms" > "Edit" > "Select all circles" > "Properties" > "Options" > "Button Styles" > "Change to Check".
But it is not changing to all of the reports on some.
Is there an easier option can select properties and search the "circles" and change to "check boxes" for the whole document?
I really don't want to have to go into each report and have to change each individually or export and import the data in the forms and the teachers dont want to have to rewrite each report.
Someone please help!Are all of the teachers using Adobe Reader (or Acrobat), as opposed to something like Preview on tha Mac or Microsoft Reader on Windows? Preview is known to corrupts PDF form in a number of ways, including converting radio buttons to check boxes. Microsoft Reader causes other types of corruption. Also, if you create the fields in InDesign, it uses non-standard appearances for the various states and even Reader/Acrobat doesn't always set them in the way you might expect, so it's best to create them in Acrobat.
Your description is a bit confusing since you're calling them radio buttons and check boxes at the same time. Can you clarify what the original field type is?
It is possible to set the various field appearance properties with a script, which could loop through all of the fields and make the needed changes, but without more information about what's causing the changes and exactly what the changes are, it's hard to suggest anything specific. -
How do I list product details using check boxes to save having to write the same info over and o
Hi there
First of all
Happy New Year and I hope everyone is well all the best for the future
Now...... back to the point
What I want to do is........
I am making a jewelry ... necklace... shopping site for my girlfriend.... well.... my wife in two weeks.... This site has been a loooong time coming.... I am still not happy with it so it still not public.... but is working ok She very upset it taking more than a year.... but I am still learning and I always want it better
Anyway
I have hundreds of Necklace details to enter..... i thought it would be easy but it is very tmie consuming...... So ...
The necklaces are made from different kinds of stones.... turquoise .. agate ... and about a hundred more different kinds of stones
In my add product form I have a field for entering product details..... to enter the different kinds of stones the necklaces are made from..... sometimes more than twenty for one necklace..... So what I want to do is have check boxes... or radio boxes to choose what stones to add to the description..... So I can have a list of about fifty different kinds of stones all with a check box next to them so that when you choose a box that stone name would appear in the product description
Sounds easy but I can't figure out how to do it.....
I think I need a different table in my database a 'stone_neck' field to store all the stone names.... about 50 fields..... .... with an id field and a name field and maybe a display field ....... I think
Does that sound correct.......?
If so then how do I display the details in a field in a table in my product detail page? I think I need a recordset on my detail page that gets all the stone names.... but how do I display the names of the stones that I have checked in the addprod form ? Do I need to put all every one of the stone info from the bindings panel? and then show region if .......
i am confused
If anyone has any ideas it would be great
Have a great dayMaybe you can take tips by visiting sites of prominent jewelry brands like Tiffany to get some ideas of how to structure your product list details.
Just a thought.
Mahadevan
www.wheretobuyringsnow.com -
Hi All,
iam Using ALV BLOCK list to print the output along with check boxes, iam able to print the output along with the check boxes but when i select any of the check box and click button on application tool bar it is going to dump and saying,
FIELD SYMBOL HAS NOT YET BEEN ASSIGNED.
i populated layout with following fields.
w_layout-box_fieldname = 'BOX'.
w_layout-box_tabname = 'T_FINAL2'.
Plz Help me out.
Thanks in Advance.
Neha*& Report BCALV_TEST_BLOCK_LIST
report bcalv_test_block_list.
types: g_ty_t_carrid type standard table of alv_tab,
g_ty_t_connid type standard table of alv_chck,
g_ty_t_curr type standard table of alv_cur,
g_ty_s_sflight type alv_t_t2,
g_ty_s_carrid type alv_tab,
g_ty_s_connid type alv_chck,
g_ty_s_curr type alv_cur.
constants: con_sflight type lvc_fname value 'ALV_T_T2',
con_scarr type lvc_fname value 'ALV_TAB',
con_spfli type lvc_fname value 'ALV_CHCK',
con_scurx type lvc_fname value 'ALV_CUR',
con_event_01 type lvc_fname value 'PF_STATUS_SET',
con_event_02 type lvc_fname value 'USER_COMMAND',
con_event_03 type lvc_fname value 'CALLER_EXIT',
con_event_04 type lvc_fname value 'LIST_MODIFY',
con_event_05 type lvc_fname value 'BEFORE_LINE_OUTPUT',
con_event_06 type lvc_fname value 'AFTER_LINE_OUTPUT',
con_event_07 type lvc_fname value 'SUBTOTAL_TEXT',
con_event_08 type lvc_fname value 'REPREP_MODIFY',
con_event_09 type lvc_fname value 'TOP_OF_PAGE',
con_event_10 type lvc_fname value 'END_OF_PAGE',
con_event_11 type lvc_fname value 'TOP_OF_LIST',
con_event_12 type lvc_fname value 'END_OF_LIST',
con_event_13 type lvc_fname value 'TOP_OF_COVERPAGE',
con_event_14 type lvc_fname value 'END_OF_COVERPAGE',
con_event_15 type lvc_fname value 'TOP_OF_FOREIGN_PAGE',
con_event_16 type lvc_fname value 'END_OF_FOREIGN_PAGE',
con_event_17 type lvc_fname value 'GROUPLEVEL_CHANGE'.
DATA *
tables: sscrfields. " for processing the FCODEs in Selektion screens
include <icon>.
include <symbol>.
type-pools: slis, kkblo.
types: g_ty_t_icon type standard table of icon,
g_ty_t_icont type standard table of icont,
begin of g_ty_s_plane,
carrid type g_ty_s_sflight-carrid,
connid type g_ty_s_sflight-connid,
planetype type g_ty_s_sflight-planetype,
seatsmax type g_ty_s_sflight-seatsmax,
end of g_ty_s_plane,
g_ty_t_plane type sorted table of g_ty_s_plane
with unique key carrid connid,
begin of g_ty_s_fcat_curr,
fieldname type lvc_fname,
cfieldname type lvc_fname,
currency type lvc_s_fcat-currency,
end of g_ty_s_fcat_curr,
g_ty_t_fcat_curr type sorted table of g_ty_s_fcat_curr
with unique key fieldname,
begin of g_ty_s_sort.
include type slis_sortinfo_alv.
types: end of g_ty_s_sort,
g_ty_t_sort type sorted table of g_ty_s_sort
with unique key spos fieldname,
begin of g_ty_s_test,
list_amount type num1,
select_amount type i,
only_db_info type char1,
db_short type char1,
excp_display type char1,
excp_condense type char1,
layo_title type lvc_s_layo-grid_title,
layo_zebra type char1,
layo_no_vert_lines type char1,
layo_no_horiz_lines type char1,
layo_cell_merge type char1,
layo_count type char1,
layo_box type char1,
layo_no_colhead type char1,
layo_column_optimize type char1,
layo_keys_hotspot type char1,
layo_no_keyfix type char1,
layo_no_hotspot type char1,
layo_hotspot_rows type i occurs 0,
layo_hotspot_columns type lvc_fname occurs 0,
layo_no_scrolling type char1,
layo_no_authcheck type char1,
layo_no_min_linesize type char1,
layo_min_linesize type sylinsz,
layo_max_linesize type sylinsz,
layo_group_change_edit type char1,
layo_get_selinfo type char1,
layo_confirmation_prompt type char1,
layo_f2code type syucomm,
layo_reprep type char1,
sum_before type char1,
sum_no_sumline type char1,
sum_no_sumchoice type char1,
sum_numc type char1,
sum_no_unitsplit type char1,
sum_totals_only type char1,
sum_totals_text type symsgli,
sum_no_subtotals type char1,
sum_no_subchoice type char1,
sum_subtotals_text type symsgli,
prnt_print type char1,
prnt_reserve_lines type lvc_s_prnt-reservelns,
prnt_no_listinfo type char1,
prnt_no_selinfo type char1,
prnt_with_title type char1,
prnt_footline type lvc_s_prnt-footline,
prnt_printinfo type char1,
prnt_no_coverpage type char1,
prnt_no_new_page type char1,
prnt_no_change_print_params type char1,
color_rows type i occurs 0,
color_fields_column type lvc_fname occurs 0,
color_fields_cell type lvc_fname occurs 0,
fcat_no_out_fields type lvc_fname occurs 0,
fcat_tech_fields type lvc_fname occurs 0,
fcat_fix_column_fields type lvc_fname occurs 0,
fcat_do_sum_fields type lvc_fname occurs 0,
fcat_no_sum_fields type lvc_fname occurs 0,
fcat_curr_fields type g_ty_t_fcat_curr,
curr_amount type i,
curr_space type char1,
t_sort type g_ty_t_sort,
no_info_popup type char1,
info_popup_once type char1,
events_info_popup type lvc_fname occurs 0,
events type lvc_fname occurs 0,
buffer_active type char1,
bypassing_buffer type char1,
end of g_ty_s_test,
begin of g_ty_s_outtab.
include type g_ty_s_sflight.
types: list type num1,
box type char1,
count type i,
lights type char1,
checkbox type char1,
hotspot type char1,
color(4) type c,
tabcolor type slis_t_specialcol_alv,
price2 type g_ty_s_sflight-price,
currency2 type g_ty_s_sflight-currency,
char(10) type c,
string type string,
int1 type int1,
int2 type int2,
int4 type int4,
numc(10) type n,
dec(10) type p decimals 2,
fltp type f,
dats type d,
tims type t,
icon type icon-id,
icon_qinfo type icon-name,
symbol type icon-id,
end of g_ty_s_outtab,
g_ty_t_outtab type table of g_ty_s_outtab.
constants: con_true type char1 value 'X',
con_ok type sy-ucomm value 'OK',
con_exit type sy-ucomm value 'EXIT',
con_canc type sy-ucomm value 'CANC',
con_back type sy-ucomm value 'BACK'.
data: gt_outtab1 type g_ty_t_outtab,
gt_outtab2 type g_ty_t_outtab,
gt_outtab3 type g_ty_t_outtab,
gt_outtab4 type g_ty_t_outtab,
gt_outtab5 type g_ty_t_outtab,
gt_outtab6 type g_ty_t_outtab,
gt_outtab7 type g_ty_t_outtab,
gt_outtab8 type g_ty_t_outtab,
gt_outtab9 type g_ty_t_outtab.
data: gt_outtab type g_ty_t_outtab with header line,
gs_test type g_ty_s_test.
data: g_repid type sy-repid.
data: g_field type lvc_s_fcat-fieldname,
g_int_field type i.
CLASS random DEFINITION
class random definition.
public section.
types:
value(16) type p decimals 0,
numcv(15) type n.
constants:
max type random=>value value 4294967295.
class-methods:
computes a random natural number from the set {0, ..., random=>max}.
number returning value(rval) type random=>value,
computes a random character from the set {A-Za-z0-9}
c returning value(rval) type char01,
computes a random string consisting of "len" random characters
string importing len type i
returning value(rval) type string,
computes a date
dats returning value(rval) type d,
computes a time
time returning value(rval) type t,
computes a random numc from the set {low, ..., high}
numc importing low type random=>numcv high type random=>numcv
returning value(rval) type random=>numcv,
computes a random integer from the set {low, ..., high}
i importing low type i high type i
returning value(rval) type i,
computes a random integer from the set {low, ..., high}
int2 importing low type int2 high type int2
returning value(rval) type int2,
computes a random integer from the set {low, ..., high}
int1 importing low type int1 high type int1
returning value(rval) type int1,
computes a random float from the interval [low ; high]
f importing low type f high type f
returning value(rval) type f,
computes a random character from the set {A-F0-9}
hex returning value(rval) type char01,
computes a random character from the set {0-1}
x returning value(rval) type char01,
method "random=>class_constructor"
class_constructor.
private section.
class-data:
precomputed maximal index (= string length - 1) of "random=>chars"
or of "random=>x_data".
charsmax type i,
xmax type i,
random number seed value.
(Used in method "random=>number".)
seed type random=>value.
constants:
characters for class-method "random=>hex"
hex_data(100) type c value 'ABCDEF' &
'0123456789',
characters for class-method "random=>x"
x_data(100) type c value '01',
characters for class-metshod "random=>c"
chars(100) type c value 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' &
'abcdefghijklmnopqrstuvwxyz' &
'0123456789'.
endclass. "random DEFINITION
CLASS random IMPLEMENTATION
class random implementation.
implementation of the methods for randomizing the values
method x.
data: ri type i.
ri = random=>i( low = 0 high = random=>xmax ).
move x_data+ri(1) to rval.
endmethod. "x
method hex.
data: ri type i.
ri = random=>i( low = 0 high = random=>charsmax ).
move hex_data+ri(1) to rval.
endmethod. "hex
method number.
constants:
a(3) type p value 67301, " Coefficient
c(1) type p value 1, " Increment
m(6) type p value 4294967296. " Modulus 2**32
random=>seed = ( a * random=>seed + c ) mod m.
rval = random=>seed.
endmethod. "number
method c.
data:
ri type i.
ri = random=>i( low = 0 high = random=>charsmax ).
move chars+ri(1) to rval.
endmethod. "c
method string.
data:
char(1) type c.
clear rval.
do len times.
char = random=>c( ).
concatenate rval char into rval.
enddo.
endmethod. "string
method dats.
data: l_date type sy-datum,
l_day(2) type n,
l_month(2) type n,
l_year(4) type n,
l_value type random=>numcv,
l_low type random=>numcv,
l_high type random=>numcv.
l_year = sy-datum+0(4).
l_low = l_year - 5.
l_high = l_year + 5.
l_value = random=>numc( low = l_low high = l_high ).
l_year = l_value+11(4).
l_value = random=>numc( low = 1 high = 12 ).
l_month = l_value+13(2).
case l_month.
when 2.
l_high = 28.
when 4 or 6 or 9 or 11.
l_high = 30.
when others.
l_high = 31.
endcase.
l_value = random=>numc( low = 1 high = l_high ).
l_day = l_value+13(2).
l_date+0(4) = l_year.
l_date+4(2) = l_month.
l_date+6(2) = l_day.
rval = l_date.
endmethod. "dats
method time.
data: l_time type t,
l_hour(2) type n,
l_min(2) type n,
l_sec(2) type n,
l_value type random=>numcv.
l_value = random=>numc( low = 0 high = 60 ).
l_sec = l_value+13(2).
l_value = random=>numc( low = 0 high = 60 ).
l_min = l_value+13(2).
l_value = random=>numc( low = 1 high = 24 ).
l_hour = l_value+13(2).
l_time+0(2) = l_hour.
l_time+2(2) = l_min.
l_time+4(2) = l_sec.
rval = l_time.
endmethod. "time
method numc.
Go from {0,...,random=>max} to {low,...,high} with ABAP rounding
data: l_dec(16) type p,
l_char(16) type c.
l_dec = ( ( high - low + 1 ) * random=>number( ) ) / random=>max
+ '0.5'.
subtract 1 from l_dec.
add low to l_dec.
data: lr_type_descr type ref to cl_abap_typedescr,
lr_elem_descr type ref to cl_abap_elemdescr.
lr_type_descr =
cl_abap_typedescr=>describe_by_data( rval ).
lr_elem_descr ?= lr_type_descr.
l_char = l_dec.
shift l_char left deleting leading space.
rval = l_char+0(lr_elem_descr->output_length).
endmethod. "i
method i.
Go from {0,...,random=>max} to {low,...,high} with ABAP rounding
data: l_dec(16) type p,
l_char(16) type c.
l_dec = ( ( high - low + 1 ) * random=>number( ) ) / random=>max
+ '0.5'.
subtract 1 from l_dec.
add low to l_dec.
data: lr_type_descr type ref to cl_abap_typedescr,
lr_elem_descr type ref to cl_abap_elemdescr.
lr_type_descr =
cl_abap_typedescr=>describe_by_data( rval ).
lr_elem_descr ?= lr_type_descr.
l_char = l_dec.
shift l_char left deleting leading space.
rval = l_char+0(lr_elem_descr->output_length).
endmethod. "i
method int2.
Go from {0,...,random=>max} to {low,...,high} with ABAP rounding
data: l_dec(16) type p,
l_char(16) type c.
l_dec = ( ( high - low + 1 ) * random=>number( ) ) / random=>max
+ '0.5'.
subtract 1 from l_dec.
add low to l_dec.
data: lr_type_descr type ref to cl_abap_typedescr,
lr_elem_descr type ref to cl_abap_elemdescr.
lr_type_descr =
cl_abap_typedescr=>describe_by_data( rval ).
lr_elem_descr ?= lr_type_descr.
l_char = l_dec.
shift l_char left deleting leading space.
rval = l_char+0(lr_elem_descr->output_length).
endmethod. "i
method int1.
Go from {0,...,random=>max} to {low,...,high} with ABAP rounding
data: l_dec(16) type p,
l_char(16) type c.
l_dec = ( ( high - low + 1 ) * random=>number( ) ) / random=>max
+ '0.5'.
subtract 1 from l_dec.
add low to l_dec.
data: lr_type_descr type ref to cl_abap_typedescr,
lr_elem_descr type ref to cl_abap_elemdescr.
lr_type_descr =
cl_abap_typedescr=>describe_by_data( rval ).
lr_elem_descr ?= lr_type_descr.
l_char = l_dec.
shift l_char left deleting leading space.
rval = l_char+0(lr_elem_descr->output_length).
endmethod. "i
method f.
Go from {0,...,random=>max} to [low;high]
rval = ( ( high - low ) * random=>number( ) ) / random=>max
+ low.
endmethod. "f
method class_constructor.
charsmax = strlen( chars ) - 1.
xmax = strlen( x_data ) - 1.
seed = 1.
endmethod. "class_constructor
endclass. "random IMPLEMENTATION
SELECTION-SCREEN *
selection-screen begin of block gen with frame.
parameters:
p_amount type i default 30,
p_dbinfo as checkbox,
p_dbshrt as checkbox.
selection-screen end of block gen.
parameters:
p_list type num1 default 3.
selection-screen begin of block tit with frame title text-tit.
parameters:
p_tit01 type lvc_s_layo-grid_title default text-p01. "TITLE
selection-screen end of block tit.
selection-screen begin of block lay with frame title text-lay.
parameters:
p_lay01 as checkbox. "ZEBRA
selection-screen skip.
parameters:
p_lay02 as checkbox, "NO HORIZONTAL LINES
p_lay03 as checkbox. "NO VERTICAL LINES
selection-screen skip.
parameters:
p_lay04 as checkbox. "NO SCROLLING
selection-screen skip.
parameters:
p_lay06 type syucomm, "F2CODE
p_lay07 as checkbox. "CONFIRMATION PROMPT
selection-screen end of block lay.
selection-screen begin of block spa with frame title text-spa.
parameters:
p_spa01 as checkbox, "BOX
p_spa02 as checkbox, "COUNT FELD
p_spa03 as checkbox, "NO COLUMN HEADERS
p_spa04 as checkbox. "COLUMN OPTIMIZE
selection-screen begin of block hot with frame title text-hot.
parameters:
p_hot01 as checkbox. "NO HOTSPOT
parameters:
p_hot02 as checkbox. "Hotspot auf Zeilenebene
select-options:
p_hotf02 for g_int_field no intervals default 1.
parameters:
p_hot03 as checkbox.
select-options:
p_hotf03 for g_field no intervals.
selection-screen end of block hot.
selection-screen begin of block mrg with frame title text-mrg.
parameters:
p_mrg01 radiobutton group mrge, "Default
p_mrg02 radiobutton group mrge, "kein Merge
p_mrg03 radiobutton group mrge. "Merge
selection-screen end of block mrg.
selection-screen begin of block out with frame title text-out.
parameters:
p_out01 as checkbox.
select-options:
p_outf01 for g_field no intervals.
selection-screen end of block out.
selection-screen begin of block tec with frame title text-tec.
parameters:
p_tec01 as checkbox.
select-options:
p_tecf01 for g_field no intervals.
selection-screen end of block tec.
selection-screen begin of block fix with frame title text-fix.
parameters:
p_fix01 as checkbox.
select-options:
p_fixf01 for g_field no intervals.
selection-screen end of block fix.
selection-screen begin of block txt with frame title text-txt.
selection-screen pushbutton /1(50) text-pb2 user-command pb02.
selection-screen end of block txt.
selection-screen begin of block cur with frame title text-cur.
parameters:
p_curanz type i,
p_curspc as checkbox default space.
selection-screen skip.
select-options:
p_curf00 for g_field no intervals.
parameters:
p_cur01 radiobutton group cur default 'X',
p_curf01 type lvc_s_fcat-fieldname.
parameters:
p_cur02 radiobutton group cur,
p_curf02 type g_ty_s_sflight-currency.
selection-screen end of block cur.
selection-screen begin of block sort with frame title text-srt.
selection-screen pushbutton /1(20) text-pb1 user-command pb01.
selection-screen end of block sort.
selection-screen end of block spa.
selection-screen begin of block key with frame title text-key.
parameters:
p_key01 as checkbox, "KEYFELDER ALS HOTSPOT
p_key02 as checkbox. "NO KEY FIXIERUNG
selection-screen end of block key.
selection-screen begin of block exp with frame title text-exp.
parameters:
p_excp01 as checkbox, "EXCEPTION
p_excp_c as checkbox. "EXCEPTION CONDENSE
selection-screen end of block exp.
selection-screen begin of block sum with frame title text-sum.
parameters:
p_sum01 as checkbox, "SUM BEFORE
p_sum02 as checkbox, "NUMC
p_sum03 as checkbox, "NO UNITSPLIT
p_sum04 as checkbox, "TOTALS ONLY
p_sum05 as checkbox, "NO SUMCHOICE
p_sum06 as checkbox, "NO SUMLINE
p_sum07 type sy-msgli, "TOTALS TEXT
p_sum08 as checkbox, "NO SUBCHOICE
p_sum09 as checkbox, "NO SUBTOTALS
p_sum10 type sy-msgli. "SUBTOTALS TEXT
selection-screen begin of block dos with frame title text-dos.
parameters:
p_dos01 as checkbox.
select-options:
p_dosf01 for g_field no intervals.
selection-screen end of block dos.
selection-screen begin of block nos with frame title text-nos.
parameters:
p_nos01 as checkbox.
select-options:
p_nosf01 for g_field no intervals.
selection-screen end of block nos.
selection-screen end of block sum.
selection-screen begin of block col with frame title text-col.
parameters:
p_col01 as checkbox.
select-options:
p_colf01 for g_int_field no intervals default 1.
parameters:
p_col02 as checkbox.
select-options:
p_colf02 for g_field no intervals.
parameters:
p_col03 as checkbox.
select-options:
p_colf03 for g_field no intervals.
selection-screen end of block col.
selection-screen begin of block prn with frame title text-prn.
parameters:
p_lpr01 as checkbox default 'X'. "GROUP CHANGE EDIT
selection-screen skip.
parameters:
p_lpr02 as checkbox. "GET SELINFO
selection-screen skip.
parameters:
p_lpr03 as checkbox, "NO MIN LINESIZE
p_lpr04 type sylinsz, "MIN LINESIZE
p_lpr05 type sylinsz. "MAX LINESIZE
selection-screen skip.
parameters:
p_prn01 as checkbox, "PRINT
p_prn02 type lvc_s_prnt-reservelns, "RESERVE LINES
p_prn03 as checkbox, "NO LISTINFO
p_prn04 as checkbox, "NO SELINFO
p_prn05 as checkbox, "TITEL
p_prn06 type lvc_s_prnt-footline, "FOOTLINE
p_prn07 as checkbox, "PRINT INFO
p_prn08 as checkbox, "NO COVERPAGE
p_prn09 as checkbox, "NO NEW PAGE
p_prn10 as checkbox. "NO CHANGE PRINT PARAMS
selection-screen end of block prn.
selection-screen begin of block evt with frame.
parameters:
p_evt01 as checkbox, "PF_STATUS_SET
p_evt02 as checkbox. "USER_COMMAND
selection-screen skip.
parameters:
p_evt03 as checkbox, "CALLER_EXIT
p_evt04 as checkbox, "LIST_MODIFY
p_evt05 as checkbox, "BEFORE_LINE_OUTPUT
p_evt06 as checkbox. "AFTER_LINE_OUTPUT
selection-screen skip.
parameters:
p_evt07 as checkbox, "SUBTOTAL_TEXT
p_evt08 as checkbox. "REPREP_SEL_MODIFY
selection-screen skip.
parameters:
p_evt09 as checkbox, "TOP_OF_PAGE
p_evt10 as checkbox, "END_OF_PAGE
p_evt11 as checkbox, "TOP_OF_LIST
p_evt12 as checkbox. "END_OF_LIST
selection-screen skip.
parameters:
p_evt13 as checkbox, "TOP_OF_COVERPAGE
p_evt14 as checkbox. "END_OF_COVERPAGE
selection-screen skip.
parameters:
p_evt15 as checkbox, "FOREIGN_TOP_OF_PAGE
p_evt16 as checkbox. "FOREIGN_END_OF_PAGE
selection-screen skip.
parameters:
p_evt17 as checkbox. "GROUPLEVEL_CHANGE
selection-screen end of block evt.
INITIALIZATION *
initialization.
perform f01_f4_field using 'SUM' space changing p_dosf01-low.
p_dosf01-option = 'EQ'.
p_dosf01-sign = 'I'.
append p_dosf01.
perform f01_f4_field using 'SUM' space changing p_nosf01-low.
p_nosf01-option = 'EQ'.
p_nosf01-sign = 'I'.
append p_nosf01.
perform f01_f4_field using 'KEY' space changing p_outf01-low.
p_outf01-option = 'EQ'.
p_outf01-sign = 'I'.
append p_outf01.
perform f01_f4_field using space space changing p_tecf01-low.
p_tecf01-option = 'EQ'.
p_tecf01-sign = 'I'.
append p_tecf01.
perform f01_f4_field using space space changing p_fixf01-low.
p_fixf01-option = 'EQ'.
p_fixf01-sign = 'I'.
append p_fixf01.
perform f01_f4_field using 'CURR' space changing p_curf00-low.
p_curf00-option = 'EQ'.
p_curf00-sign = 'I'.
append p_curf00.
perform f01_f4_field using 'CUKY' space changing p_curf01.
perform f01_f4_field using space space changing p_hotf03-low.
p_hotf03-option = 'EQ'.
p_hotf03-sign = 'I'.
append p_hotf03.
perform f01_f4_field using space space changing p_colf02-low.
p_colf02-option = 'EQ'.
p_colf02-sign = 'I'.
append p_colf02.
perform f01_f4_field using space space changing p_colf03-low.
p_colf03-option = 'EQ'.
p_colf03-sign = 'I'.
append p_colf03.
AT SELECTION-SCREEN *
at selection-screen.
case sscrfields-ucomm.
when 'PB01'.
call screen 1001 starting at 1 1 ending at 80 20.
when 'PB02'.
call screen 1002 starting at 1 1 ending at 80 20.
endcase.
AT SELECTION-SCREEN ON VALUE-REQUEST *
at selection-screen on value-request for p_dosf01-low.
perform f01_f4_field using 'SUM' 'X' changing p_dosf01-low.
at selection-screen on value-request for p_nosf01-low.
perform f01_f4_field using 'SUM' 'X' changing p_nosf01-low.
at selection-screen on value-request for p_outf01-low.
perform f01_f4_field using 'KEY' 'X' changing p_outf01-low.
at selection-screen on value-request for p_tecf01-low.
perform f01_f4_field using space 'X' changing p_tecf01-low.
at selection-screen on value-request for p_fixf01-low.
perform f01_f4_field using space 'X' changing p_fixf01-low.
at selection-screen on value-request for p_curf00-low.
perform f01_f4_field using 'CURR' 'X' changing p_curf00-low.
at selection-screen on value-request for p_curf01.
perform f01_f4_field using 'CUKY' 'X' changing p_curf01.
at selection-screen on value-request for p_hotf03-low.
perform f01_f4_field using space 'X' changing p_hotf03-low.
at selection-screen on value-request for p_colf02-low.
perform f01_f4_field using space 'X' changing p_colf02-low.
at selection-screen on value-request for p_colf03-low.
perform f01_f4_field using space 'X' changing p_colf03-low.
at selection-screen on value-request for p_lay06.
perform f01_f4_fcode using space
space
changing p_lay06.
START-OF-SELECTION *
start-of-selection.
g_repid = sy-repid.
gs_test-select_amount = p_amount.
gs_test-only_db_info = p_dbinfo.
gs_test-db_short = p_dbshrt.
gs_test-list_amount = p_list.
gs_test-layo_title = p_tit01.
gs_test-layo_zebra = p_lay01.
gs_test-layo_no_horiz_lines = p_lay02.
gs_test-layo_no_vert_lines = p_lay03.
gs_test-layo_no_scrolling = p_lay04.
gs_test-layo_f2code = p_lay06.
gs_test-layo_confirmation_prompt = p_lay07.
gs_test-layo_box = p_spa01.
gs_test-layo_count = p_spa02.
gs_test-layo_no_colhead = p_spa03.
gs_test-layo_column_optimize = p_spa04.
gs_test-layo_no_hotspot = p_hot01.
if p_hot02 eq con_true.
loop at p_hotf02.
if not p_hotf02-low is initial.
append p_hotf02-low to gs_test-layo_hotspot_rows.
endif.
endloop.
endif.
if p_hot03 eq con_true.
loop at p_hotf03.
if not p_hotf03-low is initial.
append p_hotf03-low to gs_test-layo_hotspot_columns.
endif.
endloop.
endif.
case con_true.
when p_mrg01.
gs_test-layo_cell_merge = space.
when p_mrg02.
gs_test-layo_cell_merge = 'N'.
when p_mrg03.
gs_test-layo_cell_merge = 'Y'.
endcase.
if p_out01 eq con_true.
loop at p_outf01.
if not p_outf01-low is initial.
append p_outf01-low to gs_test-fcat_no_out_fields.
endif.
endloop.
endif.
if p_tec01 eq con_true.
loop at p_tecf01.
if not p_tecf01-low is initial.
append p_tecf01-low to gs_test-fcat_tech_fields.
endif.
endloop.
endif.
if p_fix01 eq con_true.
loop at p_fixf01.
if not p_fixf01-low is initial.
append p_fixf01-low to gs_test-fcat_fix_column_fields.
endif.
endloop.
endif.
gs_test-curr_amount = p_curanz.
gs_test-curr_space = p_curspc.
if p_cur01 eq con_true or p_cur02 eq con_true.
data: ls_fcat_curr type g_ty_s_fcat_curr.
loop at p_curf00.
clear ls_fcat_curr.
if not p_curf00-low is initial.
ls_fcat_curr-fieldname = p_curf00-low.
case con_true.
when p_cur01.
ls_fcat_curr-cfieldname = p_curf01.
when p_cur02.
ls_fcat_curr-currency = p_curf02.
endcase.
append ls_fcat_curr to gs_test-fcat_curr_fields.
endif.
endloop.
endif.
gs_test-layo_keys_hotspot = p_key01.
gs_test-layo_no_keyfix = p_key02.
gs_test-excp_display = p_excp01.
gs_test-excp_condense = p_excp_c.
gs_test-sum_before = p_sum01.
gs_test-sum_numc = p_sum02.
gs_test-sum_no_unitsplit = p_sum03.
gs_test-sum_totals_only = p_sum04.
gs_test-sum_no_sumchoice = p_sum05.
gs_test-sum_no_sumline = p_sum06.
gs_test-sum_totals_text = p_sum07.
gs_test-sum_no_subchoice = p_sum08.
gs_test-sum_no_subtotals = p_sum09.
gs_test-sum_subtotals_text = p_sum10.
if p_dos01 eq con_true.
loop at p_dosf01.
if not p_dosf01-low is initial.
append p_dosf01-low to gs_test-fcat_do_sum_fields.
endif.
endloop.
endif.
if p_nos01 eq con_true.
loop at p_nosf01.
if not p_nosf01-low is initial.
append p_nosf01-low to gs_test-fcat_no_sum_fields.
endif.
endloop.
endif.
gs_test-layo_group_change_edit = p_lpr01.
gs_test-layo_get_selinfo = p_lpr02.
gs_test-layo_no_min_linesize = p_lpr03.
gs_test-layo_min_linesize = p_lpr04.
gs_test-layo_max_linesize = p_lpr05.
gs_test-prnt_print = p_prn01.
gs_test-prnt_reserve_lines = p_prn02.
gs_test-prnt_no_listinfo = p_prn03.
gs_test-prnt_no_selinfo = p_prn04.
gs_test-prnt_with_title = p_prn05.
gs_test-prnt_footline = p_prn06.
gs_test-prnt_printinfo = p_prn07.
gs_test-prnt_no_coverpage = p_prn08.
gs_test-prnt_no_new_page = p_prn09.
gs_test-prnt_no_change_print_params = p_prn10.
if p_col01 eq con_true.
loop at p_colf01.
if not p_colf01-low is initial.
append p_colf01-low to gs_test-color_rows.
endif.
endloop.
endif.
if p_col02 eq con_true.
loop at p_colf02.
if not p_colf02-low is initial.
append p_colf02-low to gs_test-color_fields_column.
endif.
endloop.
endif.
if p_col03 eq con_true.
loop at p_colf03.
if not p_colf03-low is initial.
append p_colf03-low to gs_test-color_fields_cell.
endif.
endloop.
endif.
if p_evt01 eq con_true.
append con_event_01 to gs_test-events.
endif.
if p_evt02 eq con_true.
append con_event_02 to gs_test-events.
endif.
if p_evt03 eq con_true.
append con_event_03 to gs_test-events.
endif.
if p_evt04 eq con_true.
append con_event_04 to gs_test-events.
endif.
if p_evt05 eq con_true.
append con_event_05 to gs_test-events.
endif.
if p_evt06 eq con_true.
append con_event_06 to gs_test-events.
endif.
if p_evt07 eq con_true.
append con_event_07 to gs_test-events.
endif.
if p_evt08 eq con_true.
append con_event_08 to gs_test-events.
endif.
if p_evt09 eq con_true.
append con_event_09 to gs_test-events.
endif.
if p_evt10 eq con_true.
append con_event_10 to gs_test-events.
endif.
if p_evt11 eq con_true.
append con_event_11 to gs_test-events.
endif.
if p_evt12 eq con_true.
append con_event_12 to gs_test-events.
endif.
if p_evt13 eq con_true.
append con_event_13 to gs_test-events.
endif.
if p_evt14 eq con_true.
append con_event_14 to gs_test-events.
endif.
if p_evt15 eq con_true.
append con_event_15 to gs_test-events.
endif.
if p_evt16 eq con_true.
append con_event_16 to gs_test-events.
endif.
if p_evt17 eq con_true.
append con_event_17 to gs_test-events.
endif.
gs_test-buffer_active = space.
gs_test-bypassing_buffer = space.
END-OF-SELECTION *
end-of-selection.
perform f01_call_list.
*& Form f01_call_list
text
form f01_call_list .
data: ls_prnt type slis_print_alv,
lt_excl type slis_t_extab,
l_exit type char1,
ls_exit type slis_exit_by_user,
l_list type num1.
call function 'REUSE_ALV_BLOCK_LIST_INIT'
exporting
i_callback_program = g_repid
i_callback_pf_status_set = ' '
i_callback_user_command = ' '
it_excluding = lt_excl.
do gs_test-list_amount times.
add 1 to l_list.
perform f01_append_list using l_list.
enddo.
perform f01_set_prnt changing ls_prnt.
call function 'REUSE_ALV_BLOCK_LIST_DISPLAY'
exporting
i_interface_check = ' '
is_print = ls_prnt
i_screen_start_column = 0
i_screen_start_line = 0
i_screen_end_column = 0
i_screen_end_line = 0
importing
e_exit_caused_by_caller = l_exit
es_exit_caused_by_user = ls_exit
exceptions
program_error = 1
others = 2.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
endform. " f01_call_list
*& Form f01_append_list
text
form f01_append_list using value(i_list) type num1.
data: ls_layo type slis_layout_alv,
lt_fcat type slis_t_fieldcat_alv,
lt_sort type slis_t_sortinfo_alv,
lt_evts type slis_t_event,
l_tabname type slis_tabname.
field-symbols: <l_table> type any.
perform f01_get_outtab using i_list.
case i_list.
when 1.
gt_outtab1 = gt_outtab[].
when 2.
gt_outtab2 = gt_outtab[].
when 3.
gt_outtab3 = gt_outtab[].
when 4.
gt_outtab4 = gt_outtab[].
when 5.
gt_outtab5 = gt_outtab[].
when 6.
gt_outtab6 = gt_outtab[].
when 7.
gt_outtab7 = gt_outtab[].
when 8.
gt_outtab8 = gt_outtab[].
when 9.
gt_outtab9 = gt_outtab[].
endcase.
perform f01_set_layo changing ls_layo.
perform f01_set_fcat changing lt_fcat.
perform f01_set_evts changing lt_evts.
concatenate 'LIST_' i_list into l_tabname.
case i_list.
when 1.
call function 'REUSE_ALV_BLOCK_LIST_APPEND'
exporting
is_layout = ls_layo
it_fieldcat = lt_fcat
i_tabname = l_tabname
it_events = lt_evts
it_sort = lt_sort
i_text = 'Hello' "#EC NOTEXT
tables
t_outtab = gt_outtab1
exceptions
program_error = 1
maximum_of_appends_reached = 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.
when 2.
call function 'REUSE_ALV_BLOCK_LIST_APPEND'
exporting
is_layout = ls_layo
it_fieldcat = lt_fcat
i_tabname = l_tabname
it_events = lt_evts
it_sort = lt_sort
i_text = 'Hello' "#EC NOTEXT
tables
t_outtab = gt_outtab2
exceptions
program_error = 1
maximum_of_appends_reached = 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.
when 3.
call function 'REUSE_ALV_BLOCK_LIST_APPEND'
exporting
is_layout = ls_layo
it_fieldcat = lt_fcat
i_tabname = l_tabname
it_events = lt_evts
it_sort = lt_sort
i_text = 'Hello' "#EC NOTEXT
tables
t_outtab = gt_outtab3
exceptions
program_error = 1
maximum_of_appends_reached = 2
others = 3.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-ms -
Interactive form, selection of check boxes, only want option to click one
I have an interactive form set up in Indesign CS6 and have muliple check boxes, I have them set to only appear when clicked, however our client would like it so that when one is clicked it won't let you click the others, so bascially is there are 10 check boxes, only allow you to click 1.
Kind regards
MarkI've never used ID's new form features, so I don't know if yo can set that property for a checkbox directly in ID, but you should be able to to do this in Acrobat. As I recall, all the check boxes need to have the same control name.
That said, the select-one-only behavior is usually associated with Radio Buttons, not checkboxes. -
Auto Convert Doesn't Do the Check Boxes
I created a document in Word, created a PDF from it and am turning it into a form. The form only consists of lines and check boxes. The check boxes are square and begin blank. I want the user to put an x or a check (I don't care) in them as necessary.
I used the automatic convert and it created fields where there were lines perfectly. But it ignored all the check boxes. Isn't there a way for it to automatically convert them too?Additional three thoughts: First, is there anything I can do while still in MS Word to enable Acrobat to see the check boxes easier? Different font? Same font, but different "character"? Etc. Second, if there is no way the check boxes can be recognized and converted, is there a way to do an after-the-fact search-and-replace, searching for the check boxes and replacing them with clickable boxes. By the way, I don't need to capture data; I just need for people to be able to fill out the form on their computer and print it. Third, if Acrobat can't do this, is there third-party form software that recognizes check boxes?
-
Create list options with check boxes?
Is it possible to create a field that is a list of [names] that could have check-boxes next to them so that users can check the box next to each [name] if that [name] appears in the asset/production?
I can create a lookup which makes a long vertical list of [names] but it's not a very efficient way of identifying that metadata...
CheersNo.
A drop-down menu with a checkbox next to each name? Or a multi-line text field that also contains checkboxes? I don't think I've seen either of those approaches supported in any user interface, let alone by Final Cut Server.
In any case, the answer is no. A checkbox is a boolean value. A lookup is a menu of predetermined choices. A text field is a string. You can't nest the different variable types inside each other. -
Hi,
I've made a Application but I've a strange thing.
When I select al columns to be shown in the program (and I run the program) I can select a record and modify it, thts perfect!
BUT...
When I deactivate some columns (Application->Page defenition->Regions->Reports and deactivate some columns). When I run the program I cant modify the records anymore... Anyone an idea?
regards,
RichardRichard,
I have a few points with regards to your post that might make it a bit easier to help you:
Is this a tabular form, if so, have you created it manually, or using the wizard? Your subject is regarding Check Boxes, but you have not mentioned them again in your post.
Is it a process that is not firing, or your application that is erroring when trying to show this report and finally when you say you "deactivate" columns, are you setting the "Show" checkbox to unchecked, or are you setting them to be displayed conditionally?
Cj -
Some check boxes can be checked, some cannot
I have Adobe Reader 11, which I'm using to fill out a grant application. Some of the check boxes are able to be checked but some are not. How do I make a check box "checkable"? Thanks!
There are a number of possibilities, from there not being any actual check box fields, to them being controlled by JavaScript. Can you post a link to the form so we can say for sure?
-
Selection using check box in std ALV grid!
Hi all,
I have written a custom report to show the O/p in ALV grid.
This is my code:
TABLES :zpo_loi.
TYPE-POOLS : slis.
TYPE-POOLS: icon.
TABLES : sscrfields.
DATA : ls_composer TYPE ssfcompop,
ls_control TYPE ssfctrlop.
DATA : wa_return TYPE TABLE OF bapiret2 ,
wa_address TYPE bapiaddr3.
DATA : wa_crmd_orderadm_h TYPE zpo_loi,
it_po TYPE TABLE OF crmd_orderadm_h,
wa_po TYPE bbp_pds_header.
DATA : it_tab TYPE TABLE OF zpo_loi.
DATA : it_data TYPE TABLE OF crmd_orderadm_h,
wa_data TYPE bbp_pds_header,
et_data TYPE bbps_sf_po_output.
DATA : w_formname TYPE tdsfname ,
w_sfname TYPE rs38l_fnam.
DATA :it_po_no TYPE TABLE OF select_be_obj_id,
wa_it_po_no LIKE LINE OF it_po_no.
DATA :r_itab TYPE ddshretval OCCURS 0.
DATA : it_output LIKE TABLE OF zloi,
wa_output TYPE zloi.
DATA : w_answer TYPE c.
DATA : g_repid LIKE sy-repid,
g_title TYPE lvc_title,
g_set_pf_stat TYPE slis_formname VALUE 'SET_PF_STATUS',
g_user_command TYPE slis_formname VALUE 'USER_COMMAND',
g_layout TYPE slis_layout_alv,
g_print_alv TYPE slis_print_alv,
g_variant LIKE disvariant,
c_char_a(1) VALUE 'A',
c_char_x(1) VALUE 'X',
itab_alv_sort TYPE slis_t_sortinfo_alv,
itab_alv_fcat TYPE slis_t_fieldcat_alv.
* Internal tables Begin with IT_ *
DATA : it_fcat TYPE slis_t_fieldcat_alv, "---ALV
it_disp TYPE TABLE OF zloi.
* Work Area for Internal tables Begin with WA_ *
DATA : wa_fcat TYPE slis_fieldcat_alv , "---ALV
wa_layout TYPE lvc_s_layo, "---ALV
wa_it_disp LIKE LINE OF it_disp.
DATA : it_sf_po TYPE TABLE OF crmd_orderadm_h,
wa_sf_po TYPE bbp_pds_header.
*SELECTION-SCREEN:
* BEGIN OF SCREEN 500 AS WINDOW TITLE title,
* END OF SCREEN 500.
*DATA : functxt TYPE smp_dyntxt.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS sel_po FOR zpo_loi-zobject_id.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
PARAMETERS : pr_loi RADIOBUTTON GROUP grp1 USER-COMMAND ucom,
pr_fondo RADIOBUTTON GROUP grp1.
SELECTION-SCREEN END OF BLOCK b2.
* At selection-screen output *
AT SELECTION-SCREEN OUTPUT.
IF pr_fondo = 'X'.
REFRESH sel_po.
LOOP AT SCREEN.
IF screen-name = text-003 OR screen-name = text-004.
screen-input = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ELSEIF pr_loi = 'X'.
LOOP AT SCREEN.
IF screen-name = text-003 OR screen-name = text-004.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
* At selection-screen on radiobutton *
AT SELECTION-SCREEN ON RADIOBUTTON GROUP grp1.
IF pr_fondo = 'X'.
REFRESH sel_po.
LOOP AT SCREEN.
IF screen-name = text-003 OR screen-name = text-004.
screen-input = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ELSEIF pr_loi = 'X'.
LOOP AT SCREEN.
IF screen-name = text-003 OR screen-name = text-004.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR sel_po-low.
PERFORM populate_table.
PERFORM f4_help.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR sel_po-high.
PERFORM populate_table.
PERFORM f4_help.
* At selection-screen *
AT SELECTION-SCREEN.
*---CHECKING THE INPUT >>>
IF sy-ucomm = 'ONLI'.
PERFORM f002-check_input.
PERFORM f001-check.
ENDIF.
*& Form POPULATE_TABLE
* text
* --> p1 text
* <-- p2 text
FORM populate_table .
SELECT zobject_id
description
FROM zpo_loi
INTO CORRESPONDING FIELDS OF TABLE it_tab.
SORT it_tab BY zobject_id ASCENDING.
ENDFORM. " POPULATE_TABLE
*& Form F4_HELP
* text
* --> p1 text
* <-- p2 text
FORM f4_help .
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
ddic_structure = ' '
retfield = 'ZOBJECT_ID'
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'A'
value_org = 'S'
TABLES
value_tab = it_tab
return_tab = r_itab.
ENDFORM. " F4_HELP
*& Form F001-CHECK
* text
* --> p1 text
* <-- p2 text
FORM f001-check .
IF pr_fondo = 'X'.
PERFORM display_expiring_fondos.
ELSEIF pr_loi = 'X'.
PERFORM fetch_po_det.
PERFORM build_fcat.
PERFORM alv_display.
ENDIF.
ENDFORM. " F001-CHECK
*& Form F002-CHECK_INPUT
* text
* --> p1 text
* <-- p2 text
FORM f002-check_input .
IF pr_loi = 'X'.
REFRESH it_po.
IF sel_po-low IS NOT INITIAL.
SELECT object_id
FROM crmd_orderadm_h
INTO CORRESPONDING FIELDS OF TABLE it_po
WHERE object_type = 'BUS2201'
AND object_id = sel_po-low.
IF sy-subrc NE 0.
IF sel_po-high IS NOT INITIAL.
SELECT object_id
FROM crmd_orderadm_h
INTO CORRESPONDING FIELDS OF TABLE it_po
WHERE object_type = 'BUS2201'
AND object_id = sel_po-high.
IF sy-subrc NE 0.
MESSAGE e009(zsrm).
ENDIF.
ENDIF.
MESSAGE e007(zsrm).
ENDIF.
ELSE.
MESSAGE e010(zsrm).
ENDIF.
IF sel_po-high IS NOT INITIAL.
SELECT object_id
FROM crmd_orderadm_h
INTO CORRESPONDING FIELDS OF TABLE it_po
WHERE object_type = 'BUS2201'
AND object_id = sel_po-high.
IF sy-subrc NE 0.
MESSAGE e008(zsrm).
ENDIF.
ENDIF.
ENDIF.
ENDFORM. " F002-CHECK_INPUT
*& Form FETCH_PO_DET
* text
* --> p1 text
* <-- p2 text
FORM fetch_po_det .
REFRESH it_po.
it_po_no[] = sel_po[].
DATA : w_count TYPE i,
w_lines TYPE c,
wa_header TYPE bbp_pds_po_header_d.
REFRESH : it_po,it_output.
IF sel_po-high IS NOT INITIAL.
SELECT object_id
description
posting_date
created_by
FROM crmd_orderadm_h
INTO CORRESPONDING FIELDS OF TABLE it_po
WHERE object_type = 'BUS2201'
AND object_id BETWEEN sel_po-low AND sel_po-high.
ELSE.
SELECT object_id
description
posting_date
created_by
FROM crmd_orderadm_h
INTO CORRESPONDING FIELDS OF TABLE it_po
WHERE object_type = 'BUS2201'
AND object_id = sel_po-low.
ENDIF.
w_lines = sy-dbcnt.
w_count = 1.
DO.
IF w_count LE w_lines.
READ TABLE it_po INTO wa_po INDEX w_count.
MOVE wa_po-object_id TO wa_output-zzpono.
MOVE wa_po-description TO wa_output-zzpodesc.
MOVE wa_po-posting_date TO wa_output-zzpodate.
MOVE wa_po-created_by TO wa_output-zzpocreator.
CALL FUNCTION 'BBP_PD_PO_GETDETAIL'
EXPORTING
i_object_id = wa_output-zzpono
IMPORTING
e_header = wa_header.
CALL FUNCTION 'BAPI_USER_GET_DETAIL'
EXPORTING
username = wa_output-zzpocreator
IMPORTING
address = wa_address
TABLES
return = wa_return.
CLEAR wa_output-zzpocreator.
CONCATENATE wa_address-firstname ' ' wa_address-lastname INTO wa_output-zzpocreator .
MOVE wa_header-total_value TO wa_output-zzpoval.
MOVE wa_header-currency TO wa_output-zzpocur.
APPEND wa_output TO it_output.
w_count = w_count + 1.
ELSE.
EXIT.
ENDIF.
ENDDO.
ENDFORM. " FETCH_PO_DET
*& Form BUILD_FCAT
* text
* --> p1 text
* <-- p2 text
FORM build_fcat .
g_repid = sy-repid.
g_title = 'Print LOI details'.
g_print_alv-no_print_listinfos = 'X'.
g_variant-report = sy-repid.
g_variant-variant = sy-title.
CLEAR g_layout.
g_layout-f2code = ' '.
wa_layout-zebra = 'X'.
g_layout-flexible_key = 'X'.
g_layout-colwidth_optimize = 'X'.
g_layout-detail_initial_lines = 'X'.
g_layout-box_fieldname = 'ZZCHECK'.
REFRESH it_fcat.
*Po no
CLEAR wa_fcat.
wa_fcat-fieldname = 'ZZPONO' .
wa_fcat-tabname = 'IT_DISP'.
wa_fcat-seltext_m = 'Purchase Order'.
*wa_fcat-seltext_s = 'Purchase Order.
wa_fcat-icon = 'X'.
wa_fcat-col_pos = '2'.
wa_fcat-outputlen = 10.
APPEND wa_fcat TO it_fcat.
*Description
CLEAR wa_fcat.
wa_fcat-fieldname = 'ZZPODESC' .
wa_fcat-tabname = 'IT_DISP'.
*wa_fcat-seltext_l = 'Description'.
wa_fcat-seltext_m = 'Description'.
*wa_fcat-seltext_s = 'Description'.
wa_fcat-col_pos = '3'.
wa_fcat-outputlen = 10.
APPEND wa_fcat TO it_fcat.
*Posting date
CLEAR wa_fcat.
wa_fcat-fieldname = 'ZZPODATE' .
wa_fcat-tabname = 'IT_DISP'.
wa_fcat-seltext_l = 'Posting Date'.
wa_fcat-seltext_m = 'Posting Date'.
*wa_fcat-seltext_s = 'Posting Date'.
wa_fcat-col_pos = '4'.
wa_fcat-outputlen = 8.
APPEND wa_fcat TO it_fcat.
*value
CLEAR wa_fcat.
wa_fcat-fieldname = 'ZZPOVAL' .
wa_fcat-tabname = 'IT_DISP'.
*wa_fcat-seltext_l = 'PO value'.
wa_fcat-seltext_m = 'PO value'.
*wa_fcat-seltext_s = 'PO value'.
wa_fcat-col_pos = '5'.
wa_fcat-outputlen = 15.
wa_fcat-no_zero = 'X'.
APPEND wa_fcat TO it_fcat.
*Currency
CLEAR wa_fcat.
wa_fcat-fieldname = 'ZZPOCUR' .
wa_fcat-tabname = 'IT_DISP'.
*wa_fcat-seltext_l = 'PO Currency'.
wa_fcat-seltext_m = 'PO Currency'.
*wa_fcat-seltext_s = 'PO Currency'.
wa_fcat-col_pos = '6'.
wa_fcat-outputlen = 5.
APPEND wa_fcat TO it_fcat.
*Creator
CLEAR wa_fcat.
wa_fcat-fieldname = 'ZZPOCREATOR' .
wa_fcat-tabname = 'IT_DISP'.
*wa_fcat-seltext_l = 'Buyer'.
wa_fcat-seltext_m = 'Buyer'.
*wa_fcat-seltext_s = 'Buyer'.
wa_fcat-col_pos = '7'.
wa_fcat-outputlen = 12.
APPEND wa_fcat TO it_fcat.
ENDFORM. " BUILD_FCAT
*& Form ALV_DISPLAY
* text
* --> p1 text
* <-- p2 text
FORM alv_display .
SORT it_output BY zzpono.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = g_repid
i_callback_pf_status_set = g_set_pf_stat
i_callback_user_command = g_user_command
i_grid_title = g_title
is_layout = g_layout
it_fieldcat = it_fcat[]
is_variant = g_variant
is_print = g_print_alv
TABLES
t_outtab = it_output[]
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
ENDIF.
ENDFORM. " ALV_DISPLAY
*& Form user_command
* text
* -->R_UCOMM text
* -->RS_SELFIELD text
FORM user_command USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield. "#EC CALLED
DATA: gd_repid LIKE sy-repid, "Exists
ref_grid TYPE REF TO cl_gui_alv_grid.
IF ref_grid IS INITIAL.
CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
IMPORTING
e_grid = ref_grid.
ENDIF.
IF NOT ref_grid IS INITIAL.
CALL METHOD ref_grid->check_changed_data .
ENDIF.
rs_selfield-refresh = 'X'.
CASE r_ucomm.
WHEN 'PRINTLOI'.
PERFORM call_sf.
WHEN 'BACK'.
CALL SELECTION-SCREEN 1000.
WHEN 'CANCEL'.
CALL SELECTION-SCREEN 1000.
WHEN 'EXIT'.
CALL SELECTION-SCREEN 1000.
ENDCASE.
ENDFORM. "user_command
*& Form set_pf_status
* text
* -->RT_EXTAB text
FORM set_pf_status USING rt_extab TYPE slis_t_extab.
SET PF-STATUS 'ZALV' EXCLUDING rt_extab.
SET TITLEBAR 'ZALV'.
ENDFORM. "set_pf_status
*& Form CALL_SF
* text
* --> p1 text
* <-- p2 text
FORM call_sf .
REFRESH it_sf_po.
LOOP AT it_output INTO wa_output WHERE zzcheck = 'X'.
wa_sf_po-object_id = wa_output-zzpono.
APPEND wa_sf_po TO it_sf_po.
ENDLOOP.
w_formname = 'ZSR_EBP_DOCU_LETTEROFINTENT1'.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = w_formname
IMPORTING
fm_name = w_sfname
EXCEPTIONS
no_form = 1
no_function_module = 2
OTHERS = 3.
IF sy-subrc <> 0.
ENDIF.
ls_composer-tdnewid = 'X'.
ls_control-no_dialog = 'X'.
LOOP AT it_sf_po INTO wa_sf_po.
CALL FUNCTION w_sfname
EXPORTING
control_parameters = ls_control
output_options = ls_composer
wa_object = wa_sf_po
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
OTHERS = 5.
IF sy-subrc <> 0.
ENDIF.
ENDLOOP.
ENDFORM. " CALL_SF
*& Form DISPLAY_EXPIRING_FONDOS
* text
* --> p1 text
* <-- p2 text
FORM display_expiring_fondos .
SET PF-STATUS 'ZLOI'.
SET TITLEBAR 'ZLOI'.
TYPES : BEGIN OF ty_output1,
guid TYPE bbp_guid,
object_id TYPE crmt_object_id_db,
description TYPE crmt_process_description,
posting_date TYPE crmt_posting_date,
zzfondo_dat TYPE zfondo_dat,
created_by TYPE crmt_created_by,
END OF ty_output1.
DATA : it_output1 TYPE TABLE OF ty_output1,
wa_output1 TYPE ty_output1,
w_lines,
w_count,
it_fondo TYPE TABLE OF zsr_fondo,
it_temp_fondo TYPE TABLE OF zsr_fondo,
wa_temp_fondo TYPE zsr_fondo,
wa_fondo TYPE zsr_fondo,
w_diff TYPE p,
wa_header1 TYPE bbp_pds_po_header_d.
CONSTANTS : c_otype(8) VALUE 'BUS2201'.
REFRESH : it_output1,it_temp_fondo,it_fondo.
SELECT b~zzfondo_dat
a~guid
a~object_id
a~description
a~posting_date
a~created_by
INTO CORRESPONDING FIELDS OF TABLE it_output1
FROM bbp_pdhsc AS b
LEFT OUTER JOIN crmd_orderadm_h AS a ON b~guid = a~guid
AND a~object_type = c_otype.
LOOP AT it_output1 INTO wa_output1.
CALL FUNCTION '/SDF/CMO_DATETIME_DIFFERENCE'
EXPORTING
date1 = sy-datum
date2 = wa_output1-zzfondo_dat
IMPORTING
datediff = w_diff
EXCEPTIONS
invalid_datetime = 1
OTHERS = 2.
IF sy-subrc <> 0.
ENDIF.
IF w_diff <= '7'.
wa_temp_fondo-zzpono = wa_output1-object_id.
APPEND wa_temp_fondo TO it_temp_fondo.
ENDIF.
ENDLOOP.
*select the final entries for PO whose FONDO is expiring
DESCRIBE TABLE it_temp_fondo LINES w_lines.
w_count = 1.
DO.
IF w_count LE w_lines.
READ TABLE it_temp_fondo INTO wa_temp_fondo INDEX w_count.
IF sy-subrc = 0.
CALL FUNCTION 'BBP_PD_PO_GETDETAIL'
EXPORTING
i_object_id = wa_temp_fondo-zzpono
IMPORTING
e_header = wa_header1.
wa_fondo-zzpono = wa_temp_fondo-zzpono.
wa_fondo-zzpodesc = wa_header1-description.
wa_fondo-zzpodate = wa_header1-posting_date.
wa_fondo-zzexpdate = wa_header1-zzfondo_dat.
wa_fondo-zzpoval = wa_header1-total_value.
wa_fondo-zzpocur = wa_header1-currency.
wa_fondo-zzpocreator = wa_header1-created_by.
CLEAR : wa_address.
REFRESH wa_return.
CALL FUNCTION 'BAPI_USER_GET_DETAIL'
EXPORTING
username = wa_header1-created_by
IMPORTING
address = wa_address
TABLES
return = wa_return.
CLEAR wa_fondo-zzpocreator.
CONCATENATE wa_address-firstname ' ' wa_address-lastname INTO wa_fondo-zzpocreator .
w_count = w_count + 1.
APPEND wa_fondo TO it_fondo.
ENDIF.
ELSE.
EXIT.
ENDIF.
ENDDO.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_structure_name = 'ZSR_FONDO'
i_grid_title = 'EXPIRING FONDOS'
TABLES
t_outtab = it_fondo[]
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
ENDIF.
ENDFORM. " DISPLAY_EXPIRING_FONDOS
Now in my ALV grid o/p i can see the check box but if i select one row and then try to select another the first one gets deselected.
Can anybody tell me what is missing?Hi,
Try like changing this
insted of
g_layout-f2code = ' '.
use this
g_layout-f2code = 'DISP'. " Sets fcode for when double
and
g_layout-f2code = '&ETA'. " it will display POPUP screen
Best Regards
Ranga
Edited by: Ranga Swamy on Nov 1, 2008 11:07 PM
Edited by: Ranga Swamy on Nov 1, 2008 11:17 PM -
Check box in ALV grid gets unselected for new selection
Hi all,
This is my code :
TYPE-POOLS : slis.
Variable
DATA: g_repid LIKE sy-repid,
g_title TYPE lvc_title,
g_set_pf_stat TYPE slis_formname VALUE 'SET_PF_STATUS',
g_user_command TYPE slis_formname VALUE 'USER_COMMAND',
g_layout TYPE slis_layout_alv,
g_print_alv TYPE slis_print_alv,
g_variant LIKE disvariant,
c_char_a(1) VALUE 'A',
c_char_x(1) VALUE 'X',
itab_alv_sort TYPE slis_t_sortinfo_alv,
itab_alv_fcat TYPE slis_t_fieldcat_alv,
fm_name type rs38l_fnam," Function Module Name
* l_sfctrlparams LIKE ssfctrlop, " Form Print Parameter
* l_sfoutopt LIKE ssfcompop,
pri_params LIKE pri_params,
c_x type c .
* Internal tables Begin with IT_ *
DATA : it_fcat TYPE SLIS_T_FIELDCAT_ALV, "---ALV
it_disp type table of ZLOI.
* Work Area for Internal tables Begin with WA_ *
data : wa_fcat TYPE slis_fieldcat_alv , "---ALV
wa_layout TYPE lvc_s_layo, "---ALV
wa_it_disp like line of it_disp.
* Objects *
DATA : cref TYPE REF TO cl_gui_custom_container, "---ALV
gref TYPE REF TO cl_gui_alv_grid. "---ALV
* Start-of-selection
Start-of-selection.
perform fetch_po_det.
perform build_fcat.
perform alv_display.
*& Form FETCH_PO_DET
* text
* --> p1 text
* <-- p2 text
FORM FETCH_PO_DET .
data : it_po type table of crmd_orderadm_h,
wa_po like line of it_po,
wa_header type BBP_PDS_PO_HEADER_D.
select guid
object_id
DESCRIPTION
POSTING_DATE
CREATED_BY
from crmd_orderadm_h
into corresponding fields of table it_po
where object_type = 'BUS2201'.
loop at it_po into wa_po.
move wa_po-object_id to wa_it_disp-ZZPONO.
move wa_po-DESCRIPTION to wa_it_disp-ZZPODESC.
move wa_po-posting_date to wa_it_disp-ZZPODATE.
move wa_po-created_by to wa_it_disp-ZZPOCREATOR.
CALL FUNCTION 'BBP_PD_PO_GETDETAIL'
EXPORTING
I_OBJECT_ID = wa_it_disp-zzpono
IMPORTING
E_HEADER = wa_header.
move wa_header-total_value to wa_it_disp-ZZPOVAL.
move wa_header-currency to wa_it_disp-ZZPOCUR.
append wa_it_disp to it_disp.
endloop.
* write : wa_it_disp-zzpono.
ENDFORM. " FETCH_PO_DET
*& Form BUILD_FCAT
* text
* --> p1 text
* <-- p2 text
FORM BUILD_FCAT .
g_repid = sy-repid.
g_title = 'LOI details'.
g_print_alv-no_print_listinfos = 'X'.
g_variant-report = sy-repid.
g_variant-variant = sy-title.
CLEAR g_layout.
g_layout-f2code = ' '.
wa_layout-zebra = 'X'.
g_layout-flexible_key = 'X'.
g_layout-colwidth_optimize = 'X'.
g_layout-detail_initial_lines = 'X'.
g_layout-box_fieldname = 'ZZCHECK'.
*g_layout-box_tabname = 'ITAB_REPORT'.
*Check box
wa_fcat-fieldname = 'ZZCHECK'.
wa_fcat-checkbox = 'X'.
wa_fcat-outputlen = '1'.
wa_fcat-col_pos = '1'.
wa_fcat-edit = '1'.
wa_fcat-seltext_m = 'No'.
append wa_fcat to it_fcat.
*Po no
clear wa_fcat.
wa_fcat-fieldname = 'ZZPONO' .
wa_fcat-tabname = 'IT_DISP'.
* wa_fcat-seltext = 'Purchase Order'.
wa_fcat-seltext_m = 'Purchase Order'.
*wa_fcat-seltext_s = 'Purchase Order.
wa_fcat-icon = 'X'.
wa_fcat-col_pos = '2'.
wa_fcat-outputlen = 10.
append wa_fcat to it_fcat.
*Desc
wa_fcat-fieldname = 'ZZPODESC' .
wa_fcat-tabname = 'IT_DISP'.
*wa_fcat-seltext_l = 'Description'.
wa_fcat-seltext_m = 'Description'.
*wa_fcat-seltext_s = 'Description'.
wa_fcat-col_pos = '3'.
wa_fcat-outputlen = 10.
append wa_fcat to it_fcat.
*Postign date
wa_fcat-fieldname = 'ZZPODATE' .
wa_fcat-tabname = 'IT_DISP'.
wa_fcat-seltext_l = 'Posting Date'.
wa_fcat-seltext_m = 'Posting Date'.
*wa_fcat-seltext_s = 'Posting Date'.
wa_fcat-col_pos = '4'.
wa_fcat-outputlen = 8.
append wa_fcat to it_fcat.
*value
wa_fcat-fieldname = 'ZZPOVAL' .
wa_fcat-tabname = 'IT_DISP'.
*wa_fcat-seltext_l = 'PO value'.
wa_fcat-seltext_m = 'PO value'.
*wa_fcat-seltext_s = 'PO value'.
wa_fcat-col_pos = '5'.
wa_fcat-outputlen = 15.
append wa_fcat to it_fcat.
*Currency
wa_fcat-fieldname = 'ZZPOCUR' .
wa_fcat-tabname = 'IT_DISP'.
*wa_fcat-seltext_l = 'PO Currency'.
wa_fcat-seltext_m = 'PO Currency'.
*wa_fcat-seltext_s = 'PO Currency'.
wa_fcat-col_pos = '6'.
wa_fcat-outputlen = 5.
append wa_fcat to it_fcat.
*Creator
wa_fcat-fieldname = 'ZZPOCREATOR' .
wa_fcat-tabname = 'IT_DISP'.
*wa_fcat-seltext_l = 'Buyer'.
wa_fcat-seltext_m = 'Buyer'.
*wa_fcat-seltext_s = 'Buyer'.
wa_fcat-col_pos = '7'.
wa_fcat-outputlen = 12.
append wa_fcat to it_fcat.
ENDFORM. " BUILD_FCAT
*& Form ALV_DISPLAY
* text
* --> p1 text
* <-- p2 text
FORM ALV_DISPLAY .
sort it_disp by ZZPONO.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER = ' '
* I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = g_repid
I_CALLBACK_PF_STATUS_SET = g_set_pf_stat
I_CALLBACK_USER_COMMAND = g_user_command
* I_CALLBACK_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
* I_STRUCTURE_NAME =
* I_BACKGROUND_ID = ' '
I_GRID_TITLE = g_title
* I_GRID_SETTINGS =
IS_LAYOUT = g_layout
IT_FIELDCAT = it_fcat[]
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
* I_SAVE = ' '
IS_VARIANT = g_variant
* IT_EVENTS =
* IT_EVENT_EXIT =
IS_PRINT = g_print_alv
* IS_REPREP_ID =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* I_HTML_HEIGHT_TOP = 0
* I_HTML_HEIGHT_END = 0
* IT_ALV_GRAPHICS =
* IT_HYPERLINK =
* IT_ADD_FIELDCAT =
* IT_EXCEPT_QINFO =
* IR_SALV_FULLSCREEN_ADAPTER =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = it_disp[]
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " ALV_DISPLAY
*& Form user_command
* text
* -->R_UCOMM text
* -->RS_SELFIELD text
FORM user_command USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield. "#EC CALLED
CASE R_UCOMM.
WHEN 'PRINT'.
READ TABLE IT_disp INTO WA_IT_DISP WITH KEY ZZCHECK = 'X'.
IF SY-SUBRC EQ 0.
loop at it_DISP INTO WA_IT_DISP.
CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
TEXT_QUESTION = 'Print the LOI details?'
TEXT_BUTTON_1 = 'Yes'
TEXT_BUTTON_2 = 'No'.
* IMPORTING
* ANSWER = w_answer.
IF SY-SUBRC 0.
ENDIF.
* PERFORM CALL_SF.
endloop.
ENDIF.
WHEN 'BACK'.
LEAVE PROGRAM.
WHEN 'EXIT'.
LEAVE PROGRAM.
WHEN 'CANCEL'.
LEAVE PROGRAM.
ENDCASE.
rs_selfield-refresh = 'X'.
ENDFORM. "user_command
*& Form set_pf_status
* text
* -->RT_EXTAB text
FORM set_pf_status USING rt_extab TYPE slis_t_extab.
SET PF-STATUS 'ZSTANDARD' EXCLUDING rt_extab.
SET TITLEBAR sy-tcode.
ENDFORM. "set_pf_status
Now in my ALV grid o/p i can see the check box but if i select one row and then try to slect another the first one gets deselected.
Can anybody tell me what is missing?Hi,
if you need just a check box for each line, try to get rid of this line from your layout.
g_layout-box_fieldname = 'ZZCHECK'.
SAP uses this field to store info about selected lines. Hence you click on the second check box, you select different line and the first line is erased. You can select more line by holding SHIFT + CTRL
Cheers
Maybe you are looking for
-
Firefox and Minefield won't open articles in the Washington Post. Any suggestions?
It opens the front page of the site, but not all articles.
-
Printer Model: HP Officejet Pro 8500 A910 Operating System: MS Windows XP, windows 7 Connection Method: Wireless via AT&T netgear router Problem Description: i got error "unable to communicate with printer".i checked several ways.but it i
-
Using an old Airport Express as a 'wireless gaming adapter' with a PC
Patience please - this is prob v obvious but I'm no tech! I want to set up a wirelessly connected 'Slingbox' in the UK at my sisters place. I have an old (OLD!) Airport Express 'port' (looks like the current base station but is from a time when base
-
there is a whole bar above my tabs bar with a plus sign at the extreme right. when I click this it opens this CONDUIT thing and all kinds of other access to apps, which again I do not want. I use windows XP on a dell laptop.
-
Okay this is driving me bonkers. What I have is a series of buttons that lead to stage areas that show infomation. One is a news feed that is an external html file. Now when I click the button it does its transitions fine and stop and when it goes to