Report without 'save as' menu and print control
I have to design a secure report. They want me to design it in a secure way so that people can see their special data on the screen but can not have a 'Save as' menu, and plus people can print their reports only three times in a month, no more.
I have had prepared it in mod/plsql but they wanted me to add these controls later. I think having these controls on html output is impossible, so back to Reports changed my mind.
I need help. Any idea ??
Thanks so much..
Impossible. You control what the server sends the client - a HTML page.
You cannot control what the client does with it. The client can be a number of different browsers. The client can be a tty telnet type client. The client can wear suspenders and a bowler hat. The client can wear ballet shoes and a tutu.
To think that one can control the client's management/control of that data (specifically web browser based) from a mod_plsql server side PL/SQL proc, is a fatal misunderstanding of the very fundamental principles of client-server.
Similar Messages
-
Mod/PlSql Report without 'save as' menu and with print control
I have to design a secure report. They want me to design it in a secure way so that people can see their special data on the screen but can not have a 'Save as' menu, and plus people can print their reports only three times in a month, no more.
I have had prepared it in mod/plsql but they wanted me to add these controls later. I think having these controls on html output is impossible, so back to Reports changed my mind.
I need help. Any idea ??
Thanks so much..Impossible. You control what the server sends the client - a HTML page.
You cannot control what the client does with it. The client can be a number of different browsers. The client can be a tty telnet type client. The client can wear suspenders and a bowler hat. The client can wear ballet shoes and a tutu.
To think that one can control the client's management/control of that data (specifically web browser based) from a mod_plsql server side PL/SQL proc, is a fatal misunderstanding of the very fundamental principles of client-server. -
PDF and Print Control in Reports.
Dear All,
I want to set particular format for every report in PDF and Print control option like want to place client's logo in header and page number and date in fotter , how can i achive this,is there any way we can set it globally coz doing on every report is very time consuming.
Regards,
Tarang JainYou need Firebug....to know how your Dashboard works!!!!!!
Check these 2 blogs and play.....
http://oraclebizint.wordpress.com/2008/01/03/oracle-bi-ee-101332-customizing-download-links/
http://oraclebizint.wordpress.com/2007/10/26/oracle-bi-ee-101332-styles-and-skins-firebug-to-your-rescue/
i hope i helped....
http://greekoraclebi.blogspot.com/
Close the question.....and add a new thread...
Give if you wish the appropriate points... -
Linking to an OBIEE report without showing the user and password
Hi!
we are trying to access to an obiee report from an external portal (coded with php).
The idea is that the user clicks on a link an gets the report in pdf format. For that purpose we are using this url:
http://ttivobiee01:7001/analytics/saw.dll?Go&Path=/shared/Prueba/ogp_obi&Action=Print&P0=1&P1=eq&P2="Criteria"."Key"&P3=1402&NQuser=user&NQPassword=pass&format=pdf
But this url is expossing OBIEE's user and password.
In order to avoid this security issue we tried to do an wget of the url but it doesn't return the report. Instead we get an html, which seams to download the report chunk by chunk (using javaScript).
The question is, is there any way that we could let our portal ussers access to an obbie report without expossing the user and password?
I have been looking into oracle forums and have found this: OBIEE Go URL with password protected
but we couldn't use this aproach due to security issues.
Thanks!
NuriaHi!
We have finally done this (and it works!)
<?php
$urlInforme='http://obi:7001/analytics/saw.dll?Go&Path=/shared/Prueba/ogp_obi&Action=Print&P0=1&P1=eq&P2="Criterios"."Clave oficial"&P3=1402&NQuser=user&NQPassword=pass&format=pdf';
$ch = curl_init($urlInforme);
$ckfile = tempnam ("./", "CURLCOOKIE");
$ch = curl_init ($urlInforme);
curl_setopt ($ch, CURLOPT_COOKIEJAR, $ckfile);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec ($ch);
$ch = curl_init ($urlInforme);
curl_setopt ($ch, CURLOPT_COOKIEFILE, $ckfile);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$fp = fopen("salida.pdf", "w");
curl_setopt($ch, CURLOPT_FILE, $fp);
$output = curl_exec ($ch);
curl_close($ch);
fclose($fp); -
How we can print directly a report without preview to a local printer in web
How we can print directly a report without preview to a local printer in web-environment, whith Oracle 9ias Report server release 6i patch 11.
The user want to print ticket, built by Oracle Report, without previuw on PDF format, in a web three-tier environment.
Please supply my documentation in detail and sample code if you can.Hello,
Take a look to the example provided in the note :
Note.253881.1 How to Create a Report With a Frame Only on the Last Page at a Fixed Position
Regards -
How do I print all the open tabs in Photoshop, without clicking on each and printing manually?
If the song are part of an album, the album should have a cloud icon for downloading it in full. If they are separate tracks (not in the same album) you will have to download individually.
-
What are the security settings to lock down a form with fillable fields and yet allow someone with Reader to fill in the fields as will as save the form and print it?
You want to allow someone to open your document and fill out the form (in the fields you have created), but not change or edit the form, right? Here's the answer - assuming you are using Acrobat Pro and someone will be opening the PDF using at least Acrobat Reader 9 and up:
Tools > Protection > Encrypt < Encrypt with Password
Answer YES to change the security.
A new window opens:
Do NOT select Document Open (or that will require a password to open the document.)
Select: Permissions (Check the box next to "Restrict editing and printing of the document.")
Change the following 2 settings from the drop-down box:
Printing Allowed: Select High Resolution
Changes Allowed: Select Commenting, filling in form fields, and signing signature fields
Leave selected: "Enable text access for screen reader devices for the visually impaired"
Change Permissions Password (insert a strong password)
Leave all other settings alone in "Options"
OK - OK
Re-enter the Permissions Password (the one you entered above)
OK - OK
Save the PDF to apply the security [notice that (SECURED0 will appear after the document title] -
How do I select "Start" menu and choose "Control Panel"?
I am working a a problem with the software on a Canon digital camera. My instructions from Canon Support are to:
1.Select my START menu and choose CONTROL Panel.
How do I do that? I have Mountain Lion OS.
Thanks for any help.Those are instructions for Windows. The equivalent action is to go to the Apple menu (left end of Menu Bar at the top of the screen) and select System Preferences.
However, that may not help with your problem, because the steps after "1" will be different on a Mac (for whatever it's telling you do to for Windows). It may help if you explained the actual problem "with the software on Canon digital camera." -
Can i save my form and print it
Can I save my form and print it
Hi,
You will not be able to save the FormsCentral online HTML form locally and print. If you have Acrobat XI, you could create a PDF form via FormsCentral (Download as PDF) locally and open it via Adobe Acrobat/Reader and print it. If you are using the online FormsCentral app, then you need a paid subscription to be able to create the PDF form.
Hope this helps,
Thanks,
Lucia -
Is there a quality difference?
The "Save As" seems to run Distiller, but if I select "Print Document" and select "Adobe PDF" as the printer, it also seems to work OK, although I sometimes get a "Times" font not available, will be replaced by "Times New Roman", even though I can't find any reference to "times" in my book.
Is there an advantage to running Distiller?
Thanks!
John
www.controlgeek.net> Is there a quality difference?
I'd expect them (as well as print-to-Ps & Distill) to be the same for the same settings.
We print to Ps & Distill, for several reasons, not all of which may apply to you:
More control. Distilling provides menus for everything Adobe lets you control in PDF gen. Print/SaveAs may not (and don't in our environment).
Faster printing (Frame doesn't have to wait for the tps to pdf gen). You can get back to work while a long job renders.
Unequal versions/different platforms. We author on FM8/Unix and Distill on Acro9/PC.
> ... although I sometimes get a "Times" font not available, will be replaced by "Times New Roman", even though I can't find any reference to "times" in my book.
Save the component files to MIF and examine with a plaintext editor. If not found, the font invocation is probably coming in with a text inset, or a graphic of type DWG, DXF, EPS, PDF or possibly SVG. -
Reports output to a file and printer/previewer
Group,
It's been a while since I messed with reports, but I have been given the requirement to somehow save a copy of a generated report, so that it could be reprinted at some later date exactly as it was originally printed. My initial thought was to save a copy of the report in pdf format at the time it was printed. Uses a unique file name and record that in our app.
My questions are is that technically possible, ie save to unique (to that printing) named pdf file at the same time it is printed? Or would they have to run the report twice? Once for the printer and once for the pdf file?
Are there any better alternative methods?
We are currently using forms/reports 6i, soon to be moving to 10g. But the requirement for this feature is required before we move to 10g. This would be required to work on several different reports.
Thanks for any advice.
--pat6i client server. Calling reports from forms.
So the save to file first then print with host is an option. Will that work with previewer?
thanks.
--pat -
Print Preview is missing from Firefox 6 on Mac OSX Lion in both File Menu and Print Dialog Box
The question says it all really. Print Preview option is missing from both the File menu and from the Print dialog box when you select Print. I use Print Preview a lot to avoid wasting paper.
A relevant issue might be that the Mac OSX app Preview is currently having trouble with various printers including my Xerox and so, temporarily, the default application for all Preview items is now Adobe Reader until Apple get their act together. Perhaps this is affecting things?
Thanks for any helpIt's moved to the PDF dropdown, "Open PDF in Preview"
-
I am using a table which contains a text field with a lookup. I want to use the selected value of this field in a form which is acting as a selection form. No editing of the field's value is permitted. How do I just display the value of the field (which
is considered a listbox on the form) without the reverse display and the up and down selection buttons.
I can provide an illustration of the condition I am trying to overcome, but this system doesn't accept it.
Thank you for any suggestions or clarification you can provide.
Marj WeirThank you. I'll try that approach.
I found, after much experimentation, on a similar problem involving a multiselect lookup field, that if I make the field invisible, and add a textbox that displays the fieldname plus .column(0), it displays all the selected entries.
E.g.: staff.Column(0)
Staff is the field containing the last names of selected staff members.
staff.Value only shows the first name in the lookup list whether it is checked or not, so this is useless.
staff.column(0), however, (inexplicably) shows all the selected names, e.g. Jones, Smith, Wiggins.
Marj Weir
-
ALV report editable to enter text and print with including the text?
Hi all,
I have to display output of a report in ALV format and i have to make two fileds can be editable to enter texts by user and able to print the list with that texts .
Is it possible using standard Function modules or I have to go for OO methods? Please give the sample code ?
Thanks,
Vamshi
Edited by: VAMSHI KRISHNA on Oct 31, 2008 4:25 PMHi Vamshi,
Check out the Below sample code for the editable ALV.
*& Report Z7CC_OOPS_ALV_EDITABLE
report z7cc_oops_alv_editable.
tables sflight.
data: begin of gt_outtab occurs 0. "with header line
include structure sflight.
data: celltab type lvc_t_styl.
data: end of gt_outtab.
data: gt_fieldcat type lvc_t_fcat.
data: g_carrid like sflight-carrid,
g_connid like sflight-connid.
data: gs_spfli type spfli. "#EC NEEDED
data: g_custom_container type ref to cl_gui_custom_container.
data: g_container type scrfname value 'BCALV_GRID_DEMO_0100_CONT1'.
data: g_grid type ref to cl_gui_alv_grid.
data: wa_outtab like gt_outtab.
* CLASS lcl_event_receiver DEFINITION
class lcl_event_receiver definition.
public section.
types: begin of sflight_key.
types: carrid type s_carr_id.
types: connid type s_conn_id.
types: fldate type s_date.
types: end of sflight_key.
types: sflight_keys type standard table of sflight_key,
sflight_table type standard table of sflight.
methods:
handle_data_changed
for event data_changed of cl_gui_alv_grid
importing er_data_changed.
methods:
get_inserted_rows
exporting
inserted_rows type sflight_keys.
methods:
get_deleted_rows
exporting
deleted_rows type sflight_table.
methods:
refresh_delta_tables.
methods: set_table_is_initial.
methods: set_table_is_not_initial.
methods: table_is_initial
returning value(initial) type char01.
private section.
* §4.Define internal tables to remember inserted and deleted lines,
* thus the delta between input made after the last saving.
data: inserted_rows type sflight_keys,
deleted_rows type standard table of sflight.
* This flag is set if any error occured in one of the
* following methods:
data: error_in_data type c.
* This flag signals that no records were read for the flight
* table initially:
data: initial_table type c.
** Methods to modularize event handler method HANDLE_DATA_CHANGED:
methods:
check_double_entries
importing
pr_data_changed type ref to cl_alv_changed_data_protocol.
methods:
update_delta_tables
importing
pr_data_changed type ref to cl_alv_changed_data_protocol.
methods:
perform_semantic_checks
importing
pr_data_changed type ref to cl_alv_changed_data_protocol.
methods:
get_cell_values
importing
row_id type int4
pr_data_changed type ref to cl_alv_changed_data_protocol
exporting
key type sflight_key.
endclass. "lcl_event_receiver DEFINITION
class lcl_event_receiver implementation.
method handle_data_changed.
* data: ls_good type lvc_s_modi,
* l_price type s_price,
* ls_new type lvc_s_moce.
* error_in_data = space.
** check if there exist double entries
* call method check_double_entries( er_data_changed ).
** remember new or deleted lines for saving
* call method update_delta_tables( er_data_changed ).
** check mt_good_cells semantically
* call method perform_semantic_checks( er_data_changed ).
* if error_in_data = 'X'.
* call method er_data_changed->display_protocol.
* endif.
endmethod. "handle_data_changed
method check_double_entries.
data: lt_good_cells type lvc_t_modi,
ls_good type lvc_s_modi,
ls_key type sflight_key,
ls_sflight type sflight,
l_flightdate like gt_outtab-fldate,
l_del_row type lvc_s_moce,
ls_outtab like line of gt_outtab,
l_reentered type c.
* §5.Check if there exist already other records with equal key fields.
* Check if the user has entered two new lines where the key fields
* are equal.
* Since CARRID and CONNID are read only, the check is restrained
* to field FLDATE.
* Algorithm: Copy all entries in MT_GOOD_CELLS to a dummy table.
* During the copying procedure check if there exists
* already a line with the same Flight date.
* loop at pr_data_changed->mt_good_cells into ls_good.
* case ls_good-fieldname.
* when 'FLDATE'.
* call method pr_data_changed->get_cell_value
* exporting
* i_row_id = ls_good-row_id
* i_fieldname = ls_good-fieldname
* importing e_value = l_flightdate.
* read table lt_good_cells with key
* value = l_flightdate
* transporting no fields.
* if sy-subrc = 0.
** There exists already a line with the same flight date!
* call method pr_data_changed->add_protocol_entry
* exporting
* i_msgid = '0K' i_msgno = '000' i_msgty = 'E'
* i_msgv1 = text-m01
* i_fieldname = ls_good-fieldname
* i_row_id = ls_good-row_id.
* error_in_data = 'X'.
* else.
* ls_good-value = l_flightdate.
* append ls_good to lt_good_cells.
* endif.
* endcase.
* endloop.
** Check if any new entries already exist in gt_outtab.
** At this point, lt_good_cells contains only lines with
** FIELDNAME = 'FLDATE'.
* loop at lt_good_cells into ls_good.
* l_flightdate = ls_good-value. "flightdate, see above
* read table gt_outtab with key
* carrid = g_carrid
* connid = g_connid
* fldate = l_flightdate
* transporting no fields.
* if sy-subrc = 0.
** Check if this entry was deleted before, i.e. it is in the table
** of deleted rows. If so, the entry does not exist twice. The user
** has deleted a line and then reentered it.
* l_reentered = space.
* loop at pr_data_changed->mt_deleted_rows into l_del_row.
* read table gt_outtab into ls_outtab index l_del_row-row_id.
* if sy-subrc ne 0.
* message i000(0k) with text-e01."Fehler beim Löschen
* elseif
* ls_outtab-carrid eq g_carrid
* and ls_outtab-connid eq g_connid
* and ls_outtab-fldate eq ls_good-value.
* l_reentered = 'X'.
* endif.
* endloop.
* if l_reentered ne 'X'.
* call method pr_data_changed->add_protocol_entry
* exporting
* i_msgid = '0K' i_msgno = '000' i_msgty = 'E'
* i_msgv1 = text-m01
* i_fieldname = ls_good-fieldname
* i_row_id = ls_good-row_id.
* error_in_data = 'X'.
* endif.
* endif.
* endloop.
** In this demo report you may prevent the selection
** of data by setting parameter 'p_ds'.
** If this is done, the next check is required:
* if me->table_is_initial( ) eq 'X'.
* call method get_cell_values
* exporting row_id = 1
* pr_data_changed = pr_data_changed
* importing key = ls_key.
* select single * from sflight into ls_sflight
* where carrid = ls_key-carrid
* and connid = ls_key-connid
* and fldate = ls_key-fldate.
* if sy-subrc = 0.
* call method pr_data_changed->add_protocol_entry
* exporting
* i_msgid = '0K' i_msgno = '000' i_msgty = 'E'
* i_msgv1 = text-m01
* i_fieldname = 'FLDATE'
* i_row_id = 1.
* error_in_data = 'X'.
* endif.
** flag initial_table is reset in method 'update_delta_tables'
* endif.
endmethod. "check_double_entries
method update_delta_tables.
* data: l_ins_row type lvc_s_moce,
* l_del_row type lvc_s_moce,
* ls_key type sflight_key,
* ls_sflight type sflight,
* ls_outtab like line of gt_outtab.
** §6.Use protocol attributes MT_DELETED_ROWS and MT_INSERTED_ROWS
** to remember which lines where deleted or inserted. Save this
** information in your internal tables.
** deleted rows
* loop at pr_data_changed->mt_deleted_rows into l_del_row.
* read table gt_outtab into ls_outtab index l_del_row-row_id.
* if sy-subrc ne 0.
* message i000(0k) with text-e01."Fehler beim Löschen
* else.
* move-corresponding ls_outtab to ls_sflight.
** It should no be possible that the same line is deleted twice,
** so we just add the new key line to 'deleted_rows'.
* append ls_sflight to deleted_rows.
** If this line was inserted just before it is deleted:
* delete me->inserted_rows
* where carrid = ls_outtab-carrid
* and connid = ls_outtab-connid
* and fldate = ls_outtab-fldate.
* endif.
* endloop.
** inserted rows
** At this point ALV has not added new lines
** to gt_outtab, so you can not access their values
** by reading gt_outtab.
** Table MT_GOOD_CELLS holds new values that can be
** referenced using the ROW_ID.
* if me->table_is_initial( ) eq 'X'.
** No flights were selected initially. This is the first new line.
* call method get_cell_values
* exporting row_id = 1
* pr_data_changed = pr_data_changed
* importing key = ls_key.
* append ls_key to inserted_rows.
* call method me->set_table_is_not_initial.
* endif.
* loop at pr_data_changed->mt_inserted_rows into l_ins_row.
* call method get_cell_values
* exporting row_id = l_ins_row-row_id
* pr_data_changed = pr_data_changed
* importing key = ls_key.
** READ TABLE gt_outtab INTO ls_outtab INDEX l_ins_row-row_id.
** Just insert the new row regardless if the input is wrong
* append ls_key to inserted_rows.
* endloop.
endmethod. "update_delta_tables
method get_cell_values.
* get values of key cells of row ROW_ID
** CARRIER
* call method pr_data_changed->get_cell_value
* exporting
* i_row_id = row_id
* i_fieldname = 'CARRID'
* importing
* e_value = key-carrid.
* if sy-subrc ne 0.
* message i000(0k) with text-e02. "Fehler beim Einfügen
* endif.
** CONNID
* call method pr_data_changed->get_cell_value
* exporting
* i_row_id = row_id
* i_fieldname = 'CONNID'
* importing
* e_value = key-connid.
* if sy-subrc ne 0.
* message i000(0k) with text-e02. "Fehler beim Einfügen
* endif.
** FLDATE
* call method pr_data_changed->get_cell_value
* exporting
* i_row_id = row_id
* i_fieldname = 'FLDATE'
* importing
* e_value = key-fldate.
* if sy-subrc ne 0.
* message i000(0k) with text-e02. "Fehler beim Einfügen
* endif.
endmethod. "get_cell_values
method perform_semantic_checks.
* data: ls_good type lvc_s_modi,
* l_planetype type s_planetye,
* l_seatsmax type s_seatsmax.
* loop at pr_data_changed->mt_good_cells into ls_good.
* case ls_good-fieldname.
* when 'PLANETYPE'.
* call method pr_data_changed->get_cell_value
* exporting
* i_row_id = ls_good-row_id
* i_fieldname = ls_good-fieldname
* importing
* e_value = l_planetype.
* select single seatsmax from saplane into l_seatsmax
* where planetype = l_planetype.
* if sy-subrc ne 0.
* call method pr_data_changed->add_protocol_entry
* exporting
* i_msgid = '0K' i_msgno = '000' i_msgty = 'E'
* i_msgv1 = text-m02
* i_fieldname = ls_good-fieldname
* i_row_id = ls_good-row_id.
* error_in_data = 'X'.
* else.
* call method pr_data_changed->modify_cell
* exporting i_row_id = ls_good-row_id
* i_fieldname = 'SEATSMAX'
* i_value = l_seatsmax.
* endif.
* endcase.
* endloop.
endmethod. "perform_semantic_checks
method get_inserted_rows.
* inserted_rows = me->inserted_rows.
endmethod. "get_inserted_rows
method get_deleted_rows.
* deleted_rows = me->deleted_rows.
endmethod. "get_deleted_rows
method refresh_delta_tables.
* clear me->inserted_rows[].
* clear me->deleted_rows[].
endmethod. "refresh_delta_tables
method set_table_is_initial.
* initial_table = 'X'.
endmethod. "set_table_is_initial
method set_table_is_not_initial.
* initial_table = space.
endmethod. "set_table_is_not_initial
method table_is_initial.
* if initial_table = 'X'.
* initial = 'X'.
* else.
* initial = space.
* endif.
endmethod. "table_is_initial
endclass. "lcl_event_receiver IMPLEMENTATION
data: g_verifier type ref to lcl_event_receiver.
data: g_max type i value 100.
data: gs_layout type lvc_s_layo.
data: ok_code like sy-ucomm,
save_ok like sy-ucomm.
parameters: p_ds type c as checkbox. "delete selection
select-options s_carrid for sflight-carrid
no intervals no-extension default 'LH'.
select-options s_connid for sflight-connid
no intervals no-extension default '0400'.
start-of-selection.
g_carrid = s_carrid-low.
g_connid = s_connid-low.
* first check airline and connection
select single * from spfli into gs_spfli
where carrid = g_carrid
and connid = g_connid.
call screen 100.
*& Module STATUS_0100 OUTPUT
* text
module status_0100 output.
set pf-status 'MAIN100'.
set titlebar 'MAIN100'.
if g_custom_container is initial.
perform create_and_init_alv changing gt_outtab[]
gt_fieldcat.
endif.
endmodule. " STATUS_0100 OUTPUT
*& Form create_and_init_alv
* text
* <--P_GT_OUTTAB[] text
* <--P_GT_FIELDCAT text
form create_and_init_alv changing pt_outtab like gt_outtab[]
pt_fieldcat type lvc_t_fcat.
data: lt_exclude type ui_functions.
create object g_custom_container
exporting container_name = g_container.
create object g_grid
exporting i_parent = g_custom_container.
* Create Objekt to verify input values.
* (This object is already needed in form SELECT_DATA).
create object g_verifier.
* SET HANDLER g_verifier->handle_data_changed FOR g_grid.
perform select_data changing pt_outtab[].
perform build_fieldcat changing pt_fieldcat.
perform exclude_tb_functions changing lt_exclude.
gs_layout-stylefname = 'CELLTAB'.
call method g_grid->set_table_for_first_display
exporting
it_toolbar_excluding = lt_exclude
is_layout = gs_layout
changing
it_fieldcatalog = pt_fieldcat
it_outtab = pt_outtab[].
* Set editable cells to ready for input initially
call method g_grid->set_ready_for_input
exporting
i_ready_for_input = 1.
endform. " create_and_init_alv
*& Form select_data
* text
* <--P_GT_OUTTAB text
form select_data changing pt_outtab like gt_outtab[].
data: lt_sflight type table of sflight,
ls_sflight type sflight,
ls_outtab like line of gt_outtab,
l_index type i,
ls_spfli type spfli, "#EC NEEDED
lt_celltab type lvc_t_styl.
* Check parameter 'p_ds'=>optionally select no data
if p_ds is initial.
* Select data from sflight
select * from sflight into table lt_sflight up to g_max rows
where carrid = g_carrid
and connid = g_connid.
endif.
if sy-subrc ne 0 or not p_ds is initial.
* no flights were found!
* We provide some default values for the first line that is entered:
ls_outtab-carrid = g_carrid.
ls_outtab-connid = g_connid.
case g_carrid.
when 'LH'.
ls_outtab-currency = 'DEM'.
when others.
ls_outtab-currency = 'US'.
endcase.
ls_outtab-seatsocc = 0.
ls_outtab-paymentsum = 0.
* set fields FLDATE, PRICE and PLANETYPE to editable
perform fill_celltab using 'RW'
changing lt_celltab.
insert lines of lt_celltab into table ls_outtab-celltab.
append ls_outtab to pt_outtab.
* Tell Verify-Objekt that the table was initial
call method g_verifier->set_table_is_initial.
else.
call method g_verifier->set_table_is_not_initial.
* move corresponding fields from lt_sflight to gt_outtab
loop at lt_sflight into ls_sflight.
move-corresponding ls_sflight to ls_outtab.
append ls_outtab to pt_outtab.
endloop.
* §3.Set all cells of the table non-editable by using the style table.
loop at pt_outtab into ls_outtab.
l_index = sy-tabix.
refresh lt_celltab.
perform fill_celltab using 'RO'
changing lt_celltab.
* Copy your celltab to the celltab of the current row of gt_outtab.
insert lines of lt_celltab into table ls_outtab-celltab.
modify pt_outtab from ls_outtab index l_index.
endloop.
endif.
endform. " select_data
*& Form fill_celltab
* text
* -->VALUE(P_MODE) text
* -->PT_CELLTAB text
form fill_celltab using value(p_mode)
changing pt_celltab type lvc_t_styl.
data: ls_celltab type lvc_s_styl,
l_mode type raw4.
* This forms sets the style of columns 'PRICE', FLDATE and PLANETYPE
* editable
if p_mode eq 'RW'.
l_mode = cl_gui_alv_grid=>mc_style_enabled.
else. "p_mode eq 'RO'
l_mode = cl_gui_alv_grid=>mc_style_disabled.
endif.
ls_celltab-fieldname = 'FLDATE'.
ls_celltab-style = l_mode.
insert ls_celltab into table pt_celltab.
ls_celltab-fieldname = 'PRICE'.
ls_celltab-style = l_mode.
insert ls_celltab into table pt_celltab.
ls_celltab-fieldname = 'PLANETYPE'.
ls_celltab-style = l_mode.
insert ls_celltab into table pt_celltab.
endform. " FILL_CELLTAB
*& Form BUILD_FIELDCAT
* text
* <--P_GT_FIELDCAT text
form build_fieldcat changing pt_fieldcat type lvc_t_fcat.
data ls_fcat type lvc_s_fcat.
call function 'LVC_FIELDCATALOG_MERGE'
exporting
i_structure_name = 'SFLIGHT'
changing
ct_fieldcat = pt_fieldcat.
loop at pt_fieldcat into ls_fcat.
if ls_fcat-fieldname eq 'PRICE'
or ls_fcat-fieldname eq 'PLANETYPE'
or ls_fcat-fieldname eq 'FLDATE'.
* §1.Set status of columns FLDATA, PRICE and PLANETYPE to editable.
* Since all cells are set to non-editable (see step 3) the cells
* of this columns will only be editable for new lines.
ls_fcat-edit = 'X'.
* Field 'checktable' is set to avoid shortdumps that are caused
* by inconsistend data in check tables. You may comment this out
* when the test data of the flight model is consistent in your system.
ls_fcat-checktable = '!'. "do not check foreign keys
modify pt_fieldcat from ls_fcat.
elseif ls_fcat-fieldname = 'CARRID'
or ls_fcat-fieldname = 'CONNID'
or ls_fcat-fieldname = 'CURRENCY'.
* §2.Use field AUTO_VALUE of the fieldcatalog to preset values when new
* lines are added.
ls_fcat-auto_value = 'X'.
ls_fcat-checktable = '!'. "do not check foreign key relations
modify pt_fieldcat from ls_fcat.
endif.
endloop.
endform. "build_fieldcat
*& Form exclude_tb_functions
* text
* <--P_LT_EXCLUDE text
form exclude_tb_functions changing pt_exclude type ui_functions.
data ls_exclude type ui_func.
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_insert_row.
append ls_exclude to pt_exclude.
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_undo.
append ls_exclude to pt_exclude.
ls_exclude = cl_gui_alv_grid=>mc_fc_loc_copy_row.
append ls_exclude to pt_exclude.
endform. " EXCLUDE_TB_FUNCTIONS
*& Module USER_COMMAND_0100 INPUT
* text
module user_command_0100 input.
save_ok = sy-ucomm.
clear ok_code.
case save_ok.
when 'SAVE'.
* perform save_data.
when 'BACK'.
* §10.Unlock your database table.
* perform unlock_sflight.
leave to screen 0.
when 'EXIT'.
perform exit_program.
when 'ADD'.
perform add_line_item.
when others.
* do nothing
endcase.
endmodule. " USER_COMMAND_0100 INPUT
* FORM EXIT_PROGRAM *
form exit_program.
leave program.
endform. "exit_program
*& Form ADD_LINE_ITEM
* text
* --> p1 text
* <-- p2 text
form add_line_item .
data: lt_rows type lvc_t_row.
data: wa_rows type lvc_t_row with header line.
data: tabix type sy-tabix.
*&Find the row ( index ) number
call method g_grid->get_selected_rows
importing et_index_rows = lt_rows.
call method cl_gui_cfw=>flush.
read table lt_rows into wa_rows index 1.
tabix = wa_rows-index .
insert gt_outtab index tabix.
*REFRESH_TABLE_DISPLAY
call method g_grid->refresh_table_display
* EXPORTING
* IS_STABLE =
* I_SOFT_REFRESH =
* EXCEPTIONS
* FINISHED = 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. " ADD_LINE_ITEM
Thanks,
Chidanand -
My iMac runs bootcamp, so I have both OSX and win7 available. I run the latest Firefox on both as my primary browser. The printing looks like the ink is running low, but when the same image is printed from other desktop apps the printing looks fine.
Hi, Jordan -
Welcome to Apple's Discussions.
If the original drive in the newer Mac is a Western Digital, its jumpers may be set to Single, which WD drives often use when there is only one device on the bus. When a second drive is added, the jumpers on the original must be reset to Master.
OS 9's utility is named Drive Setup - you should find it in the Utilities folder on the hard drive. Run that. Select the added hard drive in the list, then select Mount Volume from the Functions menu.
You can also check with that utility to see if the OS believes the drive has been set to automount at boot. Again, select the drive in the list. Then select Volume Settings from the Functions menu - there's a checkbox in that screen to set automount (for freshly initialized drives, that's turned on by default).
Also, try running Disk First Aid (should also be in the Utilities folder). Let it have a look at the second drive, and repair anything it can.
Apple System Profiler should report the format of all drives it sees. Is the format of the drive from the old Mac stated as Mac OS Standard, or as Mac OS Extended?
Maybe you are looking for
-
Cancel message is not shown in the page
Hi All, This is my code for cancel in controller: if ( "Cancel".equals(pageContext.getParameter(EVENT_PARAM)) ) { am.invokeMethod("Cancel"); MessageToken[] token = {}; OAException confirmMessage = new OAException("MTH", "MTH_SETUP_CANCEL", token, OAE
-
Font Book is showing fonts in non-english characters
Been installing my old fonts and the like to Font Book on Mountain Lion but I seem to be running into a small issue as I install. Besides the fact that I'm getting the 'A-image' for some of the fonts, a fair few of the fonts themselves also seem to b
-
Why budget check does not work with account assigment distrib. by quantity?
Hi Gurus, I have an issue in the budget check for Purchase Order (PO). I'm using the FM B31I_ACC_PURCHASE_ORDER_CHECK. The case is next: 1 Item with 21 account assignment type AS and distribution by quantity: ASSET_NO QUANTITY 1 1 2
-
My ALV footer should contain at least 70 characters. I used the standard slis_listheader for my footer but the standard info (type slis_entry) is only 60 characters. Is there any way to build a footer without using the standard? Also, I don't want to
-
How do I get a servlet configured with init parameters
When I try to add a set of <init-param> parameters to a servlet it seems like the weblogic server is trying to load it as a bean, which since its not a bean it can't do. I get the following error trace when I start the s