Changing layout of ALV to excel and displaying the data there
Dear All,
My requirement is that I have to develop an ALV report, and also plot the graphs for the same.
I need different types of graphs, so I have searched on SDN, and I found out a blg:-
"Report with a Graph.. An Approach!"
Here is what the person has done:-
I developed a simple ABAP report using ALV and just dumped all my data on it.
After this I downloaded the Standard Excel template available in the ALV.
Defined my own worksheets in this template, wrote some macros to pick up the data from the RawHeader sheet, which is available by default and will contain the ALV data.
I inserted 1 chart in this Excel template. In this chart I used the same chart type as was being used by the user for his graph. Just right clicked on the Graph area and made the changes in the source data and made it point to the sheet containing the final data.
Thats it my job is almost done.
After this uploaded this template back into the report output through
the layout settings->Change Layout Tab.
Save it as a variant and made it a default. (Do not default it if you have more than 1 user and more than 1 template
. Select the appropriate variant for the appropriate user and then display)
Well, this also was not that easy as I had thought. I landed up into 1 trouble.
In my report the number of columns displayed was not constant and kept changing based on the input. This fact was taken care by designing a variable field catalogue. But now I had gone past the simple ALV display and was giving the output in an Excel sheet using a pre-defined template. Well, I immediately found a solution to this with the set_frontend_fieldcatalogue method of CL_GUI_ALV_GRID class and fixed the field catalogue every time after calling the set_table_for_first_display method. This solved most of my problems, which were not many though.
Now here are my issues:-
I have developed the ALV report, and I have also changed the layout to excel.
But, I am unable to get the ALV Report data in the RawHeader Sheet, which is available by default.
Could anyone please guide me through this method??
It is urgent.
Points are assured for helpful answers.
Thanks and regards,
Prerna
Hi Satya Priya,
Do I have to create my own template, or the Standard ones available will do?
HEre is what I do:-
Once I get my ALV output, I goto Change LAyout->View tab.->Prefered view->Microsoft Excel.
Here I get a list of available excel templates There are 2:-
sap_mm.xls, and sap_om.xls
I select one of these, and the excel spreadsheet is displayed on the ALV screen.
But the re is another button, "Upload Document to BDS".
Do I have to upload one of the above templated to BDS?
And please tell me in detail, what is BDS???
Thanks for your help, and waiting for reply,
Prerna
Similar Messages
-
Problem in changing layout of ALV to excel
Hello everyone,
I have developed an ALV program, wherein I need to show the graphs for the same.
For this, I need my data in excel format, so that I can write some macros ,and do the further processing on it(I am using an appraoch I found on SDN, "Report with graph").
I got to know, that I need <b>SAP R/3: Add On:Interactive Excel</b>.
I asked the BASIS guys to install it, but even after installing it, I am unable to view the data in Excel layout, when I do Change LAyout->View->Microsoft Excel.
Could anyone let me know if there is any other setting which is required to view the data in excel?On the excel side, we can change the security level(Tools->Macro->Security) to either low, medium or high.
Is there any such provision in SAP?
Kindly suggest your answers, as it is important for me to get the data in excel.
Points will be rewarded.
Thanks and regards,
PrernaHi,
I have already tried what you have just mentioned.
I searched the entire SDN, for this, and this was one of the replies
But still we don't get the data(Even you didn't get it, right?).
when we change the layout to excel(Excel Inplace), there are 2 sheets by default:-
Rawheader and Rawdata.The data comes in RAwheader sheet.
But there is some setting on the BASIS side, which need to be done, in order for it to work.
I have asked my BASIS colleagues and some of my senior consultants to look into the same.
They will let me know.
I would also suggest you try your program on another PC.
I will let you know as soon as I get any replies from my colleagues.
Thanks and regards,
Prerna -
Calculating the total in alv and displaying the date
Hi,
I am trying to calculate the totals of netwr and fkimg in a report but the following coding cannot giv me the right answer so if there is anyone with the solution for this problem may you please help me out and how can i display the date on my report......here is my coding:
REPORT Z_DAILY_STOCK_NEW.
TYPE-POOLS: SLIS.
TABLES
TABLES: vbrk, kna1,vbrp,vbap,vbak, sflight.
ALV FIELDS
DATA: it_fieldcat TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,
wa_fieldcat TYPE slis_fieldcat_alv.
DATA: w_cnt LIKE sy-tabix.
total ref to data.
t_alv LIKE TABLE OF s_error WITH HEADER LINE.
DATA: gr_layout TYPE slis_layout_alv,
gr_tab_group TYPE slis_t_sp_group_alv,
gr_repid LIKE sy-repid,
gr_events TYPE slis_t_event,
gr_print TYPE slis_print_alv,
gr_user TYPE slis_formname VALUE 'USER_COMMAND'.
SELECTION SCREEN
SELECT-OPTIONS:
s_werks FOR vbrp-werks,
s_auart FOR vbak-auart.
DEFINITION OF AN INTERNAL TABLE
DATA: begin of i_stocktab occurs 0,
kunag LIKE vbrk-kunag,
name1 LIKE kna1-name1,
ort01 LIKE kna1-ort01,
inco1 LIKE vbrk-inco1,
vkgrp LIKE vbrp-vkgrp,
fkimg LIKE vbrp-fkimg,
netwr LIKE vbrk-netwr,
end of i_stocktab.
START OF SELECTION
SELECT vbrkkunag kna1name1 kna1ort01 vbrkinco1 vbrp~vkgrp
vbrpfkimg vbrknetwr
FROM kna1 inner join vbrk on kna1kunnr EQ vbrkkunrg
inner join vbak on kna1kunnr EQ vbakkunnr
inner join vbrp on vbrkvbeln EQ vbrpvbeln
INTO i_stocktab
WHERE vbrp~werks IN s_werks
AND vbak~auart IN s_auart.
APPEND i_stocktab.
ENDSELECT.
*DATA tb_alv TYPE i_stocktab WITH HEADER LINE.
PERFORM build_fieldcatalog.
PERFORM build_layout.
PERFORM build_event.
PERFORM build_print.
PERFORM calc_total.
PERFORM display_alv_report.
FORM build_fieldcatalog.
w_cnt = 1.
it_fieldcat-fieldname = 'KUNAG'.
it_fieldcat-seltext_m = 'Soldtp'.
it_fieldcat-col_pos = w_cnt.
it_fieldcat-emphasize = 'X'.
it_fieldcat-key = 'X'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
it_fieldcat-fieldname = 'NAME1'.
it_fieldcat-seltext_m = 'Name'.
it_fieldcat-col_pos = w_cnt.
it_fieldcat-emphasize = 'X'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
it_fieldcat-fieldname = 'ORT01'.
it_fieldcat-seltext_m = 'City'.
it_fieldcat-col_pos = w_cnt.
it_fieldcat-emphasize = 'X'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
it_fieldcat-fieldname = 'INC01'.
it_fieldcat-seltext_m = 'Incoterms'.
it_fieldcat-col_pos = w_cnt.
it_fieldcat-emphasize = 'X'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
it_fieldcat-fieldname = 'VKGRP'.
it_fieldcat-seltext_m = 'Sales Group'.
it_fieldcat-col_pos = w_cnt.
it_fieldcat-emphasize = 'X'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
it_fieldcat-fieldname = 'FKIMG'.
it_fieldcat-seltext_m = 'Invoiced Qty'.
it_fieldcat-col_pos = w_cnt.
it_fieldcat-emphasize = 'X'.
*it_fieldcat-do_sum = 'x'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
it_fieldcat-fieldname = 'NETWR'.
it_fieldcat-seltext_m = 'Invoiced Value'.
it_fieldcat-col_pos = w_cnt.
it_fieldcat-emphasize = 'X'.
it_fieldcat-do_sum = 'x'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
ENDFORM.
FORM build_layout.
gr_layout-no_input = 'X'.
gr_layout-colwidth_optimize = 'X'.
gr_layout-totals_text = 'Totals: '(201).
gr_layout-detail_popup = 'X'.
ENDFORM.
FORM build_event.
DATA i_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = gr_events[].
READ TABLE gr_events WITH KEY name = slis_ev_user_command
INTO i_event.
if sy-subrc = 0.
MOVE gr_user TO i_event-form.
APPEND i_event TO gr_events.
endif.
ENDFORM.
*FORM calc_total.
LOOP AT it_fieldcat into wa_fieldcat
WHERE fieldname EQ 'FKIMG' OR
fieldname EQ 'NETWR'.
wa_fieldcat-do_sum = 'X'.
wa_fieldcat-datatype = 'QUAT'.
modify it_fieldcat from wa_fieldcat.
ENDLOOP.
*ENDFORM.
FORM build_print.
gr_print-reserve_lines = '2'.
gr_print-no_coverpage = 'X'.
ENDFORM.
FORM calc_total.
DATA: total type ref to data,
subtotal1 type ref to data.
field-symbols <fkimg> like sflight.
field-symbols <netwr> like sflight.
call method grid1-> get_subtotals
importing
ep_collect00 = subtotal
ep_collect01 = total.
assign total to <fkimg>.
assign total to <netwr>.
ENDFORM.
*& FUNCTION ALV DISPLAY
FORM display_alv_report.
gr_repid = sy-repid.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = gr_repid
I_CALLBACK_USER_COMMAND = slis_ev_user_command
I_CALLBACK_TOP_OF_PAGE = 'TOP-OF-PAGE' " see FORM
IS_LAYOUT = gr_layout
IT_FIELDCAT = it_fieldcat[]
IT_SPECIAL_GROUPS = gr_tab_group
I_SAVE = 'X'
IT_EVENTS = gr_events
IS_PRINT = gr_print
TABLES
t_outtab = i_stocktab
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
IF sy-subrc <> 0.
ENDIF.
ENDFORM.
FORM top-of-page.
*ALV Header deaclarations
DATA: t_header TYPE slis_t_listheader,
wa_header TYPE slis_listheader,
t_line LIKE wa_header-info,
ld_lines TYPE i,
ld_linesc TYPE c.
*Title
wa_header-typ = 'H'.
wa_header-info = 'Report for daily Stock Returns'.
APPEND wa_header TO t_header.
CLEAR wa_header.
*Total No. Records Selected
DESCRIBE TABLE i_stocktab LINES ld_lines.
ld_linesc = ld_lines.
CONCATENATE 'Total No. of Records Selected:' ld_linesc
INTO t_line SEPARATED BY space.
wa_header-typ = 'A'.
wa_header-info = t_line.
APPEND wa_header TO t_header.
CLEAR: wa_header, t_line.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = t_header.
ENDFORM.Try This
REPORT z_daily_stock_new.
TYPE-POOLS: slis.
* TABLES
TABLES: vbrk, kna1,vbrp,vbap,vbak, sflight.
* ALV FIELDS
DATA: it_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
wa_fieldcat TYPE slis_fieldcat_alv.
DATA: w_cnt LIKE sy-tabix.
* total ref to data.
* t_alv LIKE TABLE OF s_error WITH HEADER LINE.
DATA: gr_layout TYPE slis_layout_alv,
gr_tab_group TYPE slis_t_sp_group_alv,
gr_repid LIKE sy-repid,
gr_events TYPE slis_t_event,
gr_print TYPE slis_print_alv,
gr_user TYPE slis_formname VALUE 'USER_COMMAND'.
* SELECTION SCREEN
SELECT-OPTIONS:
s_werks FOR vbrp-werks,
s_auart FOR vbak-auart.
* DEFINITION OF AN INTERNAL TABLE
DATA: BEGIN OF i_stocktab OCCURS 0,
kunag LIKE vbrk-kunag,
name1 LIKE kna1-name1,
ort01 LIKE kna1-ort01,
inco1 LIKE vbrk-inco1,
vkgrp LIKE vbrp-vkgrp,
fkimg LIKE vbrp-fkimg,
netwr LIKE vbrk-netwr,
END OF i_stocktab.
* START OF SELECTION
SELECT vbrk~kunag kna1~name1 kna1~ort01 vbrk~inco1 vbrp~vkgrp
vbrp~fkimg vbrk~netwr
FROM kna1 INNER JOIN vbrk ON kna1~kunnr EQ vbrk~kunrg
INNER JOIN vbak ON kna1~kunnr EQ vbak~kunnr
INNER JOIN vbrp ON vbrk~vbeln EQ vbrp~vbeln
INTO i_stocktab
WHERE vbrp~werks IN s_werks
AND vbak~auart IN s_auart.
APPEND i_stocktab.
ENDSELECT.
*DATA tb_alv TYPE i_stocktab WITH HEADER LINE.
PERFORM build_fieldcatalog.
PERFORM build_layout.
PERFORM build_event.
PERFORM build_print.
PERFORM calc_total.
PERFORM display_alv_report.
* FORM build_fieldcatalog *
FORM build_fieldcatalog.
w_cnt = 1.
it_fieldcat-fieldname = 'KUNAG'.
it_fieldcat-seltext_m = 'Soldtp'.
it_fieldcat-emphasize = 'X'.
it_fieldcat-key = 'X'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
it_fieldcat-fieldname = 'NAME1'.
it_fieldcat-seltext_m = 'Name'.
it_fieldcat-emphasize = 'X'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
it_fieldcat-fieldname = 'ORT01'.
it_fieldcat-seltext_m = 'City'.
it_fieldcat-col_pos = w_cnt.
it_fieldcat-emphasize = 'X'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
* w_cnt = w_cnt + 1.
* it_fieldcat-fieldname = 'INC01'.
* it_fieldcat-seltext_m = 'Incoterms'.
* it_fieldcat-emphasize = 'X'.
* APPEND it_fieldcat TO it_fieldcat.
* CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
it_fieldcat-fieldname = 'VKGRP'.
it_fieldcat-seltext_m = 'Sales Group'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
it_fieldcat-fieldname = 'FKIMG'.
it_fieldcat-seltext_m = 'Invoiced Qty'.
it_fieldcat-emphasize = 'X'.
it_fieldcat-ref_tabname = 'VBRP' .
it_fieldcat-ref_fieldname = 'FKIMG' .
it_fieldcat-do_sum = 'X' .
* *it_fieldcat-do_sum = 'x'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
w_cnt = w_cnt + 1.
clear it_fieldcat .
it_fieldcat-fieldname = 'NETWR'.
it_fieldcat-seltext_m = 'Invoiced Value'.
it_fieldcat-emphasize = 'X'.
it_fieldcat-ref_tabname = 'VBRP' .
it_fieldcat-ref_fieldname = 'NETWR' .
it_fieldcat-do_sum = 'X' .
* it_fieldcat-do_sum = 'x'.
APPEND it_fieldcat TO it_fieldcat.
CLEAR it_fieldcat.
ENDFORM.
* FORM build_layout *
FORM build_layout.
gr_layout-no_input = 'X'.
gr_layout-colwidth_optimize = 'X'.
gr_layout-totals_text = 'Totals: '(201).
gr_layout-detail_popup = 'X'.
ENDFORM.
* FORM build_event *
FORM build_event.
DATA i_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = gr_events[].
READ TABLE gr_events WITH KEY name = slis_ev_user_command
INTO i_event.
IF sy-subrc = 0.
MOVE gr_user TO i_event-form.
APPEND i_event TO gr_events.
ENDIF.
ENDFORM.
*FORM calc_total.
* LOOP AT it_fieldcat into wa_fieldcat
* WHERE fieldname EQ 'FKIMG' OR
* fieldname EQ 'NETWR'.
* wa_fieldcat-do_sum = 'X'.
* wa_fieldcat-datatype = 'QUAT'.
* modify it_fieldcat from wa_fieldcat.
* ENDLOOP.
*ENDFORM.
FORM build_print.
gr_print-reserve_lines = '2'.
gr_print-no_coverpage = 'X'.
ENDFORM.
* FORM calc_total *
FORM calc_total.
DATA: total TYPE REF TO data,
subtotal1 TYPE REF TO data.
* FIELD-SYMBOLS <fkimg> LIKE sflight.
* FIELD-SYMBOLS <netwr> LIKE sflight.
* CALL METHOD grid1-> get_subtotals
* IMPORTING
* ep_collect00 = subtotal
* ep_collect01 = total.
* ASSIGN total TO <fkimg>.
* ASSIGN total TO <netwr>.
ENDFORM.
*& FUNCTION ALV DISPLAY
FORM display_alv_report.
gr_repid = sy-repid.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = gr_repid
i_callback_user_command = slis_ev_user_command
i_callback_top_of_page = 'TOP-OF-PAGE' " see FORM
is_layout = gr_layout
it_fieldcat = it_fieldcat[]
it_special_groups = gr_tab_group
i_save = 'X'
it_events = gr_events
is_print = gr_print
TABLES
t_outtab = i_stocktab
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
ENDIF.
ENDFORM.
* FORM top-of-page *
FORM top-of-page.
*ALV Header deaclarations
DATA: t_header TYPE slis_t_listheader,
wa_header TYPE slis_listheader,
t_line LIKE wa_header-info,
ld_lines TYPE i,
ld_linesc TYPE c.
*Title
wa_header-typ = 'H'.
wa_header-info = 'Report for daily Stock Returns'.
APPEND wa_header TO t_header.
CLEAR wa_header.
*Total No. Records Selected
DESCRIBE TABLE i_stocktab LINES ld_lines.
ld_linesc = ld_lines.
CONCATENATE 'Total No. of Records Selected:' ld_linesc
INTO t_line SEPARATED BY space.
wa_header-typ = 'A'.
wa_header-info = t_line.
APPEND wa_header TO t_header.
CLEAR: wa_header, t_line.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = t_header.
ENDFORM. -
Okay I want to be able to run a .cmd file from my workstation to query a certain folder on remote clients. I want the command to find the specific folder within another folder and display the current date modified of that folder. I was
able to use a command prompt to list the subdirectory that I was looking for on a specific computer by using the
DIR command. It was something like this:
dir C:\ParentFolder\ChildFolder /ad /o-d /b
This shows a list of directories within the "ChildFolder" directory. The output would be something like:
dir C:\ParentFolder\ChildFolder /ad /o-d /b
folder1
folder2
folder3
folder4
So what I need now is a way to just show the folder in this group that had the most recent modification. For example if "folder2" was the most recently modified folder in the group, I would like my command line to just display "folder2 04/08/14
04:13 PM
Any help would be greatly appreciated.
Cheers!Thanks Mike! This is what I was looking for! Much appreciated!
I would like to run this as a script from my admin workstation that will query clients that have the "ChildFolder" directory. Is there a way to output the results to a .log/.txt file? I was working on .cmd that looked like this:
{REM Verify current folder on remote clients
del current-folder.log
ECHO WorkStation-1 >> CurrentFolder/current-folder.log 2>&1
ECHO ---------------- >> CurrentFolder/current-folder.log 2>&1
DIR \\WorkStation-1\C$\ParentFolder\ChildFolder /ad /o-d /b >> CurrentFolder/current-folder.log 2>&1
ECHO ---------------- >> CurrentFolder/current-folder.log 2>&1}
My results looked something like this:
" WorkStation-1
Folder1
Folder2
Folder3
I know it's ugly, but it was working (somewhat). I just needed to list only the most recently modified folder. Anyway, I've rambled enough.
Is there a way to get my desired results using the PS command that you provided me? -
Changing layout of ALV to excel
Hello,
I am developing an ALV report.
I want my data in the excel format, and not in the standard ALV format.
Is there any method to do so?
I have used the CL_GUI_ALV_GRID class, and I found out a method:-
Maintain_Variant.
Also ,there is an attirbute:- MMC_FC_VIEW_EXCEL.
But I am unable to implement them in my program.
Kindly help me.
Points assured for helpful answers.
Thanks and regards,
PrernaHi Prerna,
Good .. Check out the example code - Important
<b>Multi-colored output of ALV in EXCEL
There would be many situations where we need to highlight some of the records in bold or different color depending on some value. In this document, we showcase how this can be achieved. Look at the screenshot of an excel sheet with different colors and bold in some cells.
Following is a demo program in achieving the same:
Report ZMULTICOLOR_TEST no standard page heading.
this report demonstrates how to send some ABAP data to an
EXCEL sheet using OLE automation.
include ole2incl.
handles for OLE objects
data: h_excel type ole2_object, " Excel object
h_mapl type ole2_object, " list of workbooks
h_map type ole2_object, " workbook
h_zl type ole2_object, " cell
h_f type ole2_object, " font
h_c type ole2_object. " color
DATA: FILENAME LIKE RLGRAP-FILENAME.
tables: spfli.
data h type i.
table of flights
data: it_spfli like spfli occurs 10 with header line.
*& Event START-OF-SELECTION
start-of-selection.
read flights
select * from spfli into table it_spfli.
display header
uline (61).
write: / sy-vline no-gap,
(3) 'Flg'(001) color col_heading no-gap, sy-vline no-gap,
(4) 'Nr'(002) color col_heading no-gap, sy-vline no-gap,
(20) 'Von'(003) color col_heading no-gap, sy-vline no-gap,
(20) 'Nach'(004) color col_heading no-gap, sy-vline no-gap,
(8) 'Zeit'(005) color col_heading no-gap, sy-vline no-gap.
uline /(61).
display flights
loop at it_spfli.
write: / sy-vline no-gap,
it_spfli-carrid color col_key no-gap, sy-vline no-gap,
it_spfli-connid color col_normal no-gap, sy-vline no-gap,
it_spfli-cityfrom color col_normal no-gap, sy-vline no-gap,
it_spfli-cityto color col_normal no-gap, sy-vline no-gap,
it_spfli-deptime color col_normal no-gap, sy-vline no-gap.
endloop.
uline /(61).
tell user what is going on
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
PERCENTAGE = 0
text = text-007
exceptions
others = 1.
start Excel
create object h_excel 'EXCEL.APPLICATION'.
PERFORM ERR_HDL.
set property of h_excel 'Visible' = 1.
CALL METHOD OF H_EXCEL 'FILESAVEAS' EXPORTING #1 = 'c:\kis_excel.xls' .
PERFORM ERR_HDL.
tell user what is going on
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
PERCENTAGE = 0
text = text-008
exceptions
others = 1.
get list of workbooks, initially empty
call method of h_excel 'Workbooks' = h_mapl.
perform err_hdl.
add a new workbook
call method of h_mapl 'Add' = h_map.
perform err_hdl.
tell user what is going on
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
PERCENTAGE = 0
text = text-009
exceptions
others = 1.
output column headings to active Excel sheet
perform fill_cell using 1 1 1 200 'Carrier id'(001).
perform fill_cell using 1 2 1 200 'Connection id'(002).
perform fill_cell using 1 3 1 200 'City from'(003).
perform fill_cell using 1 4 1 200 'City to'(004).
perform fill_cell using 1 5 1 200 'Dep. Time'(005).
loop at it_spfli.
copy flights to active EXCEL sheet
h = sy-tabix + 1.
if it_spfli-carrid cs 'AA'.
perform fill_cell using h 1 0 000255000 it_spfli-carrid.
elseif it_spfli-carrid cs 'AZ'.
perform fill_cell using h 1 0 168000000 it_spfli-carrid.
elseif it_spfli-carrid cs 'JL'.
perform fill_cell using h 1 0 168168000 it_spfli-carrid.
elseif it_spfli-carrid cs 'LH'.
perform fill_cell using h 1 0 111111111 it_spfli-carrid.
elseif it_spfli-carrid cs 'SQ'.
perform fill_cell using h 1 0 100100100 it_spfli-carrid.
else.
perform fill_cell using h 1 0 000145000 it_spfli-carrid.
endif.
if it_spfli-connid lt 400.
perform fill_cell using h 2 0 255000255 it_spfli-connid.
elseif it_spfli-connid lt 800.
perform fill_cell using h 2 0 077099088 it_spfli-connid.
else.
perform fill_cell using h 2 0 246156138 it_spfli-connid.
endif.
if it_spfli-cityfrom cp 'S*'.
perform fill_cell using h 3 0 155155155 it_spfli-cityfrom.
elseif it_spfli-cityfrom cp 'N*'.
perform fill_cell using h 3 0 189111222 it_spfli-cityfrom.
else.
perform fill_cell using h 3 0 111230222 it_spfli-cityfrom.
endif.
if it_spfli-cityto cp 'S*'.
perform fill_cell using h 4 0 200200200 it_spfli-cityto.
elseif it_spfli-cityto cp 'N*'.
perform fill_cell using h 4 0 000111222 it_spfli-cityto.
else.
perform fill_cell using h 4 0 130230230 it_spfli-cityto.
endif.
if it_spfli-deptime lt '020000'.
perform fill_cell using h 5 0 145145145 it_spfli-deptime.
elseif it_spfli-deptime lt '120000' .
perform fill_cell using h 5 0 015215205 it_spfli-deptime.
elseif it_spfli-deptime lt '180000' .
perform fill_cell using h 5 0 000215205 it_spfli-deptime.
else.
perform fill_cell using h 5 0 115115105 it_spfli-deptime.
endif.
endloop.
EXCEL FILENAME
CONCATENATE SY-REPID '_' SY-DATUM6(2) '_' SY-DATUM4(2) '_'
SY-DATUM(4) '_' SY-UZEIT '.XLS' INTO FILENAME.
CALL METHOD OF H_MAP 'SAVEAS' EXPORTING #1 = FILENAME.
free object h_excel.
perform err_hdl.
FORM FILL_CELL *
sets cell at coordinates i,j to value val boldtype bold *
form fill_cell using i j bold col val.
call method of h_excel 'Cells' = h_zl
exporting
#1 = i
#2 = j.
perform err_hdl.
set property of h_zl 'Value' = val .
perform err_hdl.
get property of h_zl 'Font' = h_f.
perform err_hdl.
set property of h_f 'Bold' = bold .
perform err_hdl.
set property of h_f 'Color' = col.
perform err_hdl.
endform. "FILL_CELL
*& Form ERR_HDL
outputs OLE error if any *
--> p1 text
<-- p2 text
form err_hdl.
if sy-subrc <> 0.
write: / 'OLE-Automation Error:'(010), sy-subrc.
stop.
endif.
endform. " ERR_HDL</b>
Good Luck and thanks
AK -
How to store ,retrieve and display the data in the structured format?
Hi All,
We have a requirement in which we need to store a information of type some thing like as below:
"The PCM_OP_SEARCH opcode fails for the below search used in invoicing module:
0 PIN_FLD_POID POID [0] 0.0.0.1 /search -1 0
0 PIN_FLD_FLAGS INT [0] 728
0 PIN_FLD_TEMPLATE STR [0] " select sum( 1.F8 ), 1.F9 from /event 1, /item 2 where (2.F1 = V1 and 2.F5 >= V5 and 2.F6 < V6 and 2.F2 = V2) and 2.F3 = 1.F4 and 1.F7 like V7 group by 1.F9 "
0 PIN_FLD_ARGS ARRAY [1] allocated 20, used 1
1 PIN_FLD_AR_BILLINFO_OBJ POID [0] 0.0.0.1 /billinfo 10773245 3
0 PIN_FLD_ARGS ARRAY [2] allocated 20, used 1
1 PIN_FLD_BILL_OBJ POID [0] 0.0.0.0 0 0
0 PIN_FLD_ARGS ARRAY [3] allocated 20, used 1"
I understand that we can store this as a Blob or Bfile format.But I need to retrieve the data and display it on the GUI in the same format.
Can anyone please suggest me how can I achieve the same in APEX?
Thank you for your time !!
Regards,
ShanAnd what would be wrong with putting this into a plain old table with columns, on which you could then create a form+report?
-
How do u input the printer output into labview and display the data?
Hi, basically when a program has done running the program prints a page of data. basically i want labview to read this data from the parallel port of the pc, display it in labview or be able to pull the data apart and put it where i want. any ideas, be much appreciated.
thanks stuartBasically, what you need is to access the pins of your PC�s parallel port
The function that you need is located at: �Advances/ Port I/O /inport� of your function palette.
You might want to read the following documents before programming. They will help you a lot (specially if you are using WIN2000 or later OS that has a kernel stucture, you need to download the and used inport.vi of AccessHW.zip for your program to work)!
Using the Parallel Port in LabVIEW
http://zone.ni.com/devzone/conceptd.nsf/webmain/72C6FC6CE4AD4D1386256B1800794596?opendocument
IEEE 1284 - Updating the PC Parallel Port
http://zone.ni.com/devzone/conceptd.nsf/webmain/0989D3D9DAFAE64E8625680400679736?opendocument
Port and Memory Utilities for Windows
http://sine.ni.com
/apps/we/niepd_web_display.display_epd4?p_guid=B45EACE3DEBD56A4E034080020E74861&p_node=DZ52058&p_submitted=&p_rank=&p_answer=&p_source=External
Best,
USCTROJAN -
Open Excel and update the data in the Excelsheet
Dear Experts,
i load an Excel from the BDS to my Desktop and opan it
Then should i update fields in the Excelsheet update with new values.
Have somebody a sample
Thank you
FrankThis is may Code !
ATA: lt_file TYPE filetable.
DATA: ls_file LIKE LINE OF lt_file.
START-OF-SELECTION.
cl_gui_frontend_services=>file_open_dialog(
CHANGING
file_table = lt_file " Table Holding Selected Files
rc = lv_rc ). " Return Code, Number of Files or -1 If Error Occurred
READ TABLE lt_file INTO ls_file INDEX 1.
IF sy-subrc = 0.
lv_filename = ls_file-filename.
ENDIF.
CALL FUNCTION 'BDS_DOCUMENT_GET_TABLE'
EXPORTING
CLIENT = SY-MANDT
DOC_ID = 'BDS_LOC2 AB359E8A6553AE4586BE29E15A1F6D3F'
BINARY_FLAG = 'X'
TABLES
SIGNATURE = lt_SIGNATURE
COMPONENTS = lt_COMPONENTS
CONTENT = lt_CONTENT
ASCII_CONTENT = lt_ASCII_CONTENT
EXCEPTIONS
NOTHING_FOUND = 1
PARAMETER_ERROR = 2
NOT_ALLOWED = 3
ERROR_KPRO = 4
INTERNAL_ERROR = 5
NOT_AUTHORIZED = 6
OTHERS = 7.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
loop at lt_CONTENT.
CONCATENATE content lt_content-LINE into content in byte mode.
endloop.
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
EXPORTING
buffer = CONTENT
TABLES
binary_tab = pdf_data_tab.
filename = lv_filename.
cl_gui_frontend_services=>gui_download(
EXPORTING
filename = filename
filetype = 'BIN'
CHANGING
data_tab = pdf_data_tab ).
cl_gui_frontend_services=>execute(
EXPORTING
document = filename ).
filex = filename .
data: e_sheet type ole2_object.
data: e_appl type ole2_object.
data: e_work type ole2_object.
data: e_cell type ole2_object.
data: field_value(30) type c.
Start the application
create object e_appl 'EXCEL.APPLICATION'.
set property of e_appl 'VISIBLE' = 1.
Open the file
call method of e_appl 'WORKBOOKS' = e_work.
call method of e_work 'OPEN'
exporting
#1 = filex.
on this Point i wandt manupulate the Values in the Excelfile -
Hi All,
I can able to display the data through the FM REUSE_ALV_GRID_DISPLAY in the out put screen.When I click on the Microsoft Excel (CtrlShiftF7) at the ALV toolbar to view the same data in excel sheet it does open the excel sheet WITHOUT ANY DATA. Please help me how to make the data visible in the excel sheet.
Can anyone help in this regard.
Thanks & Regards,
Seshadri GHi,
Check whether the tool bar export is disabled in the alv.
check in the alv->set_table_for_first_display FM the toolbar exclude export list.
If that is ok, then try download manually by providing abutton and clicking it. You can download data manually in this way.
refer the code below.
DATA: lv_path TYPE string,
lv_fullpath TYPE string,
lc_c TYPE string,
v_fnam TYPE string,
lc_date(15) TYPE c.
TYPES: BEGIN OF ts_fieldnames,
field_name(1000),
END OF ts_fieldnames.
lc_c = 'C:\'.
WRITE sy-datum TO lc_date.
DATA:lt_fieldnames TYPE STANDARD TABLE OF ts_fieldnames,
ls_fieldnames TYPE ts_fieldnames,
lt_fieldnames1 TYPE STANDARD TABLE OF ts_fieldnames,
ls_fieldnames1 TYPE ts_fieldnames,
lt_fieldnames2 TYPE STANDARD TABLE OF ts_fieldnames,
ls_fieldnames2 TYPE ts_fieldnames,
lt_fieldnames3 TYPE STANDARD TABLE OF ts_fieldnames,
ls_fieldnames3 TYPE ts_fieldnames,
lt_fieldnames5 TYPE STANDARD TABLE OF ts_fieldnames,
ls_fieldnames5 TYPE ts_fieldnames.
CONCATENATE 'ContractAccount'
'DocumentNumber'
'Reference/InvoiceDocumentNumber'
'ClearingDocumentNumber'
INTO ls_fieldnames-field_name SEPARATED BY
cl_abap_char_utilities=>horizontal_tab.
APPEND ls_fieldnames TO lt_fieldnames.
CONCATENATE '' ''
INTO ls_fieldnames5-field_name SEPARATED BY
cl_abap_char_utilities=>newline.
APPEND ls_fieldnames5 TO lt_fieldnames5.
DATA : ls_str1 TYPE string,
ls_str2 TYPE string.
ls_str1 = 'Invoice Clearing Posting'.
ls_str2 = 'Payment On Account Posting'.
CONCATENATE ls_str1 ' :: ' lc_date INTO ls_fieldnames2-field_name.
APPEND ls_fieldnames2 TO lt_fieldnames2.
CONCATENATE ls_str2 ' :: ' lc_date INTO ls_fieldnames3-field_name.
APPEND ls_fieldnames3 TO lt_fieldnames3.
CONCATENATE 'ContractAccount'
'Reference/InvoiceDocumentNumber'
'PostOnAccountDocumentNumber'
INTO ls_fieldnames1-field_name SEPARATED BY
cl_abap_char_utilities=>horizontal_tab.
APPEND ls_fieldnames1 TO lt_fieldnames1.
CALL METHOD cl_gui_frontend_services=>file_save_dialog
EXPORTING
window_title = 'Select file for download'
default_extension = '.xls'
default_file_name = lv_path
initial_directory = lc_c
CHANGING
filename = lv_path
path = lc_c
fullpath = lv_fullpath
EXCEPTIONS
cntl_error = 1
error_no_gui = 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.
ELSE.
v_fnam = lv_fullpath.
ENDIF.
IF v_fnam IS INITIAL.
RETURN.
ENDIF.
IF i_finalclear[] IS NOT INITIAL.
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
filename = v_fnam
filetype = 'DAT'
HEADER = header
append = 'X'
write_field_separator = 'X'
CHANGING
data_tab = lt_fieldnames2
EXCEPTIONS
OTHERS = 8.
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
filename = v_fnam
filetype = 'DAT'
HEADER = header
append = 'X'
write_field_separator = 'X'
CHANGING
data_tab = lt_fieldnames
EXCEPTIONS
OTHERS = 8.
REgards
sheron -
Revision: 14023
Revision: 14023
Author: [email protected]
Date: 2010-02-07 07:54:38 -0800 (Sun, 07 Feb 2010)
Log Message:
Updating OSMFPlayer to the changed layout APIs, adding a comment, and fixing MediaContainer from ignoring its constructor argument.
Modified Paths:
osmf/trunk/apps/samples/framework/OSMFPlayer/src/OSMFPlayer.as
osmf/trunk/framework/OSMF/org/osmf/containers/MediaContainer.as
osmf/trunk/framework/OSMF/org/osmf/layout/LayoutTargetSprite.as -
How to fetch the data & display the data if fields got the same name in alv
hi frnds, i need ur help.
how to fetch the data & display the data if fields got the same name in alv grid format.
thanks in advance,
Regards,
mahesh
9321043028Refer the url :
http://abapexpert.blogspot.com/2007/07/sap-list-viewer-alv.html
Go thru the guide for OOPs based ALV.
Use SET_TABLE_FOR_FIRST_DISPLAY to display the table:
CALL METHOD grid->set_table_for_first_display
EXPORTING
I_STRUCTURE_NAME = 'SFLIGHT' Structure data
CHANGING
IT_OUTTAB = gt_sflight. Output table
You can also implement
Full Screen ALV, its quite easy. Just pass the output table to FM REUSE_ALV_GRID_DISPLAY.
For controlling and implementing the FS-ALV we have to concentrate on few of the components as follows :
1. Selection of data.
2. Prepare Layout of display list.
3. Event handling.
4. Export all the prepared data to REUSE_ALV_GRID_DISPLAY.
Regd,
Vishal -
Running Interactive commands in java and displaying the output.
Hi All,
I'm running a sample code to execute a user defined command (cmd1) and display the results. The output of the command when executed in command prompt is
(1) Executing the command cmd1
(2) Do you want to continue(Y/N)_ <waits for user input>
(3) Based on user input
(Y) Displays the results
(N) Interrupted
But i'm facing problem when i execute the below code. When the results are being displayed instead of displaying line(1) and (2) and then waiting for the input- the code waits for the input and then only displays the results.
O/p
inside output
inside input
y (------ gets the input and then only displays the results).
Executing the command cmd1
Do you want to continue(Y/N)
results
Please help out how to resolve this issue.
Thanks.
Sample Code for reference.
import java.util.*;
import java.io.*;
public class SampleCheck {
public static void main(String[] args) throws Exception {
(new SampleCheck()).test();
void test() throws Exception {
Process proc = Runtime.getRuntime().exec("cmd1");
// any error from the process?
StreamHandlerErr errorStream = new StreamHandlerErr(proc
.getErrorStream(), System.err);
// any output from the process?
StreamHandlerOutput outputStream = new StreamHandlerOutput(proc
.getInputStream(), null);
// any input to the process?
// FileInputStream fin = new FileInputStream(new File("textfile1.txt"));
StreamHandlerInput inputStream = new StreamHandlerInput(System.in, proc
.getOutputStream());
// start the stream threads
// errorStream.start();
outputStream.start();
inputStream.start();
// wait till it returns
int exitVal = proc.waitFor();
System.exit(exitVal);
class StreamHandlerInput extends Thread {
InputStream is;
OutputStream os;
StreamHandlerInput(InputStream is, OutputStream os) {
this.is = is;
this.os = os;
public void run() {
System.out.println("inside input");
try {
int c;
while ((c = is.read()) != -1) {
os.write(c);
System.out.println("c= " + c);
os.flush();
} catch (IOException e) {
System.out.println("End of Run Method..Input");
class StreamHandlerOutput extends Thread {
InputStream is;
OutputStream os;
File f=new File("jbsrt_output.txt");
StreamHandlerOutput(InputStream is, OutputStream os) {
this.is = is;
this.os = os;
public void run() {
System.out.println("inside output");
try {
int c;
FileOutputStream fs=new FileOutputStream(f);
/*PrintStream ps =new PrintStream(;
ps.print(arg0)
ps.close();*/
InputStreamReader ir = new InputStreamReader(is);
//System.out.println(ir.read());
BufferedReader br = new BufferedReader(ir);
String line = null;
while((line=br.readLine())!=null)
System.out.println(line);
} catch (Exception e) {
System.out.println("End of Run Method..Output");
class StreamHandlerErr extends Thread {
InputStream is;
OutputStream os;
StreamHandlerErr(InputStream is, OutputStream os) {
this.is = is;
this.os = os;
public void run() {
System.out.println("inside Err");
try {
int c;
while ((c = is.read()) != -1) {
os.write(c);
os.flush();
} catch (IOException e) {
System.out.println("End of Run Method..Err");
}Console input is line buffered. This means you only get the first character a line after the newline has been inputed.
The same thing happen if you just type on the console.
I am not aware of any simple way around this.
IDEs get around this by changing the application run so that the input/output is captured as it happens and sent over a socket connection. -
How to load and display the external flv video files in dynamicly and the how to control the flv fil
How to load and display the external flv video files in dynamicly using AS 3.0
and How to control the flv file add the play paus button and add seekbar.
I have using to load the flv file following code
var flvPlaceHolder1:MovieClip = new MovieClip();
var vid1:Video = new Video(734, 408);
flvPlaceHolder1.addChild(vid1);
addChild(flvPlaceHolder1);
flvPlaceHolder1.x = 1059;
flvPlaceHolder1.y = 152;
var nc1:NetConnection = new NetConnection();
nc1.connect(null);
var ns1:NetStream = new NetStream(nc1);
vid1.attachNetStream(ns1);
var listener1:Object = new Object();
listener1.onMetaData = function(evt:Object):void {};
ns1.client = listener1;
ns1.play("GV-1600 TURNING.flv");
ns1.addEventListener(NetStatusEvent.NET_STATUS, statusChanged1);
function statusChanged1(ns1:NetStatusEvent):void
trace(ns1.info.code);
if (ns1.info.code == 'NetStream.Buffer.Empty')
trace('the video has ended');
removeChild(flvPlaceHolder1);
//trace('removeChild');
gotoAndPlay(1786);
then how to add the play,paus ,full screen button and seekbar,volumebar.I have to Create the flash presentation for our company product
In this presentation the left side the text animation are displayed then right side the our product video is displayed.
In this presentation i need the following option :
1, The first product video and animation is finished then the next product is played
2, then the video displayed (size width and height 400x300) , I click this video to increase the size(ex:1000x700)
3, then the playing video i control it play, stop, paus button and volume bar, seek bar.
4, then this presentation is displayed on 42 inches LCD TV so this full presentation is run full screen.
I have finished first two steps 1 and 2
the following are the screen short and code:-
code :-
var count=0;
var flvPlaceHolder2:MovieClip = new MovieClip();
var vid2:Video = new Video(734, 408);
flvPlaceHolder2.addChild(vid2);
addChild(flvPlaceHolder2);
flvPlaceHolder2.x = 1059;
flvPlaceHolder2.y = 152;
var nc2:NetConnection = new NetConnection();
nc2.connect(null);
var ns2:NetStream = new NetStream(nc2);
vid2.attachNetStream(ns2);
var listener2:Object = new Object();
listener2.onMetaData = function(evt:Object):void {};
ns2.client = listener2;
ns2.play("GS-4000.flv");
this.addEventListener(Event.ENTER_FRAME, BtnFadeIn2);
function BtnFadeIn2(event:Event):void
if (this.currentFrame == 387)
/*flvPlaceHolder2.x = 30;
flvPlaceHolder2.y = 140;
vid2.width=1800;
vid2.height=800;
trace('Screen size is changed');*/
if(count==0)
flvPlaceHolder2.x = 30;
flvPlaceHolder2.y = 140;
vid2.width=1800;
vid2.height=800;
count++;
ns2.addEventListener(NetStatusEvent.NET_STATUS, statusChanged2);
function statusChanged2(ns2:NetStatusEvent):void
trace(ns2.info.code);
if (ns2.info.code == 'NetStream.Buffer.Empty')
trace('the video has ended');
removeChild(flvPlaceHolder2);
//trace('removeChild');
gotoAndPlay(433);
flvPlaceHolder2.buttonMode=true;
flvPlaceHolder2.addEventListener(MouseEvent.CLICK,home2);
function home2(e:MouseEvent):void
if(vid2.width==734 && vid2.height==408)
flvPlaceHolder2.x = 30;
flvPlaceHolder2.y = 140;
vid2.width=1800;
vid2.height=800;
else
flvPlaceHolder2.x = 1059;
flvPlaceHolder2.y = 152;
vid2.width=734;
vid2.height=408; -
Can Iphoto display the date and time of a pic on the pic?
I know I can get info and see a pics info, but can Iphoto display the date and time of a pic on the pic itself?
Use the Photos->Batch Change menu option to set the Title to Date and Time. That will give you what you want under each thumbnail.
TIP: For insurance against the iPhoto database corruption that many users have experienced I recommend making a backup copy of the Library6.iPhoto (iPhoto.Library for iPhoto 5 and earlier versions) database file and keep it current. If problems crop up where iPhoto suddenly can't see any photos or thinks there are no photos in the library, replacing the working Library6.iPhoto file with the backup will often get the library back. By keeping it current I mean backup after each import and/or any serious editing or work on books, slideshows, calendars, cards, etc. That insures that if a problem pops up and you do need to replace the database file, you'll retain all those efforts. It doesn't take long to make the backup and it's good insurance.
I've created an Automator workflow application (requires Tiger or later), iPhoto dB File Backup, that will copy the selected Library6.iPhoto file from your iPhoto Library folder to the Pictures folder, replacing any previous version of it. There are versions that are compatible with iPhoto 5, 6, 7 and 8 libraries and Tiger and Leopard. Just put the application in the Dock and click on it whenever you want to backup the dB file. iPhoto does not have to be closed to run the application, just idle. You can download it at Toad's Cellar. Be sure to read the Read Me pdf file.
NOTE: iPhoto 8's new option in the library rebuild pane, "Rebuild the iPhoto Library Database from automatic backup" may make this tip obsolete. We'll know when users have occasion to use it and see if that's the case. -
Designing a query and displaying the query output
The goal is to create a report (in HTML form) of all the jobs
(and job-related information) for a given department.
I envision the department name as a hyperlink to a report
based on the unique DepartmentID.
For example, the “Sales” department might contain
these jobs:
VP of Sales
Associate Salesperson
Sales Assistant
Each job requires a set of skills and a specific skill level.
“Persuasion skill” could vary as follows:
VP of Sales: ADVANCED persuasion skill
Associate Salesperson: MODERATE persuasion skill
Sales Assistant: BASIC persuasion skill
“Communication skill” could vary as follows:
VP of Sales: EXPERT communication skill
Associate Salesperson: ADVANCED communication skill
Sales Assistant: NOT REQUIRED
And so on…
Each job has roughly 20 skills that are related to it.
I’d like to display this information in a table with
the skills listed in rows, the job titles listed in column
headings, and the skill level (e.g., ADVANCED) located in the
appropriate cell where the skill and job title intersect. That way,
the reader can easily compare skill levels across jobs.
The requisite tables are below. (A field name preceded by
“frn_” is the foreign key related to another
table’s primary key.)
Table: Departments
Fields: DepartmentID, DepartmentName
Table: Jobs
Fields: JobID, JobTitle, frn_DepartmentID
Table: Skills
Fields: SkillID, SkillName
Table: Skill_Levels
Fields: Skill_LevelID, Skill_Level_Description
Table: JobSkills (this table “links” a job,
skill, and skill level)
Fields: JobSkillID, frn_JobID, frn_SkillID, frn_Skill_LevelID
I'm not sure how to do this, so thank you for any help!
LukeYou're correct; I want to display the data as you described,
with one slight change.
Instead of the words "expert" or "basic," the proficiency
ratings should be displayed as numbers, e.g., "1" for "basic, "3"
for moderate, and "5" for expert. (Table: KSAProfRatings contains
fields for both, i.e, Field: PRStatement for "basic", "moderate",
"expert" etc. and Field: PRRating for "1", "2", "3", etc. I want to
use Field: PRRating)
Table: KSAs contains Field: KSAStatement, which contains the
skills. In addition to skills, Field: KSAStatement also contains
knowledges and abilities.
So, in addition to the skills that I mentioned above, there
might be a knowledge, such as "Knowledge of company products &
services," and an ability, such as "Ability to communicate
effectively." These knowledges and abilities receive a proficiency
rating just like the skills.
There is conceptual overlap among knowledges, skills, and
abilities (KSAs), so I had referred only to "skills" for clarity.
The query that I posted reflects the actual table names,
e.g., Table: KSAs instead of Table: Skills, and Table:
KSAProfRatings instead of Table: Skill_Levels (see my first post),
but the principle is the same.
Maybe you are looking for
-
Some flash drives/USBs don't appear in Finder. But they appear in Disk Utilities so how do I get them to appear in Finder?
-
How to share music with the same account.
can anyone help? i have an ipod touch with lot sof music on already, i just bought a new iphone and have registered it to the same account, however only the applications sync to the iphone and the music doesnt sync.
-
Non-global zone sending TCP SYN-ACK packet over wrong interface.
After spending many hours looking at ipmon/ethereal logs, I believe I've found a explanation (a bug?) for the following strange behaviour (Solaris 10u1): I've got a non-global zone with Apache2 with dedicated IP and bound to interface e1000g2 of a Su
-
Purchased a used ipad 3 and previous owner is unknown. How do I activate?
I recently purchased a used iPad 3rd Generation 64GB device and it is locked by the previous ownerwhom I do not know. How do I make the unit mine?
-
Office Documents and framset issues
I use CS3 on a pretty large school website (mac osx 10.5 users) that, unfortunately, uses frames. If you click on an Office doc link nothing happens at all. If you open the body frame in its own window and THEN click on the word doc link (or browse d