Hi, Required Output in the follwoing format
Hi viewers,
my data looks like this ( EMPNO is Primary Key)
empno ename sal deptno
7839 KING 9500 10
7844 TURNER 1500 30
7876 ADAMS 1100 20
8234 KING 8000 10
9812 ADAMS 8500 20
i Need out in the following order
deptno ename empno sal
10 KING 7839 9500
8234 8000
20 ADAMS 7876 1100
9812 8500
See Hema,
Nothing big deal in it.
SQL> clear breaks
breaks cleared
SQL> INSERT INTO EMP VALUES (8888,'KING','PRESIDENT',NULL,'17-NOV-81',5000,NULL,10);
1 row created.
SQL> INSERT INTO EMP VALUES (9999,'ADAMS','CLERK',7788,'12-JAN-83',1100,NULL,20);
1 row created.
SQL> commit
2 /
Commit complete.
SQL> break on deptno on ename
SQL> select deptno, ename, empno, sal
2 from emp
3 order by deptno, ename
4 /
DEPTNO ENAME EMPNO SAL
10 CLARK 7782 2450
KING 7839 5000
8888 5000
MILLER 7934 1300
20 ADAMS 7876 1100
9999 1100
FORD 7902 3000
JONES 7566 2975
SCOTT 7788 3000
SMITH 7369 800
30 ALLEN 7499 1600
BLAKE 7698 2850
JAMES 7900 950
MARTIN 7654 1250
TURNER 7844 1500
WARD 7521 1250
16 rows selected.
SQL> Cheers
Sarma.
Similar Messages
-
Is it possible to see the Drill down output in the expanded format by default in SSRS reports?
Hi Guys,
I have created a drill down report. If i preview my report , by default i can see the out put in the aggregated level and i have to drill it to down levels if i want. My requirement is i want to see the data in the leaf level by default means report
should be displayed in the expanded format to the leaf level, if i want i can drill up the report later.
Is this possible in SSRS? Can some one help me out on this?
Thanks in advance.
Regards,
kiranHi ,
Thanks for the reply. but if i follow this steps i can see the output in the expanded format but + and - symbols will be interchanged. That means if i drill up i have (-) before the column name and if i drill down it will be (+).
For this to work you need to set properties initial appearance of toggle image
see this example
http://www.mssqltips.com/sqlservertip/1329/drill-down-techniques-in-ssrs-with-the-visibility-property/
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
Visakh
My Wiki User Page
My MSDN Page
My Personal Blog
My Facebook Page -
hi viewers,
i need a query to get the output in the following format;
note: i need ename with mgr name;
Example like;
empno ename mgr mgrname
7698 BLAKE 7839 KING
7782 CLARK 7839 KING
7902 FORD 7566 JONES
7876 ADAMS 7788 SCOTT
ok friends reply me if possible.
hemayou can also use hierarchical query
SQL> select empno,ename,prior empno mgr,prior ename mgrname
2 from emp
3 start with mgr is null
4 connect by prior empno=mgr
5 order by ename;
EMPNO ENAME MGR MGRNAME
7876 ADAMS 7788 SCOTT
7499 ALLEN 7698 BLAKE
7698 BLAKE 7839 KING
7782 CLARK 7839 KING
7902 FORD 7566 JONES
7900 JAMES 7698 BLAKE
7566 JONES 7839 KING
7839 KING
7654 MARTIN 7698 BLAKE
7934 MILLER 7782 CLARK
7788 SCOTT 7566 JONES
7369 SMITH 7902 FORD
7844 TURNER 7698 BLAKE
7521 WARD 7698 BLAKE -
Report output in the form of XML
Hi All,
May i have any inputs pls.
Requirement---
A report when ran should give the output in the XML format.
Thanks.hi,
try this FM...
DMC_CONVERT_TABLE_TO_XML
Regards,
Shankar. -
Step after getting required OUTPUT
Hi all,
I have been given the required output from the client in an excel spread sheet. Now that I know what kind of out put the client needs:
WHAT IS MY NEXT STEP?
What do i need to do to find out what fields they are and what InfoObjects they belong to?
How do i determine what datasources i need to use (RSA5)?
ThanksHi,
The Data is not available in BW.
Lets say one of the ECC fields is BUKRS (Company Code). Do I now need to find out what TABLE (Source Table) this field is stored in? How does that help me?
If yes, how can i do that?
Edited by: SAPPER BI on Mar 6, 2008 7:52 PM -
Need output like below mentioned format
Hi,
By using below query , iam getting output in the below formate as metioned
select
m.year "Year",
--decode(m.year,like '200%','a') "DG",
--decode(instr(m.year,'200'),0,Null,'Shallow Water <1000 Feet') "DG",
--decode(substr('Shallow Water <1000 Feet',1,1),'S','Shallow Water <1000 Feet') "DG1",
'Shallow Water <1000 Feet' as "Depth Group",
'Deep Water 1000-5000 Feet' as "Depth Group",
'Ultra Deep Water > 5000 Feet' as "Depth Group",
sum(decode(M.FLUID,'O',nvl(M.YEAR_TO_DATE,0))) "Ytd Oil" ,
from pden_monthly_prod m,pi_pden_well w,pden p
--- Make sure all necessary Table joins are done
where P.ENTITY=M.ENTITY
and p.entity = w.entity
---- define limitations by column values
and m.year between 2000 and 2012
and ((p.entity_type in ('LEASE','WELL') and p.province_state not in ('17','42') and p.pi_situation_cd <> 'F')
or (p.entity_type = 'ALLOCATED' and p.province_state in ('17','42') and p.pi_situation_cd <> 'F')
or (p.entity_type = 'WELL' and p.province_state = '42' and p.pi_situation_cd <> 'F')
or(p.pi_situation_cd = 'F'))
and m.fluid in ('O','CN','G','CG','OW','GW','LW','FW')
and nvl(w.water_depth,'0') <1000
--or w.water_depth between 1000 and 5000
--or w.water_depth >5000
--for Federal state only (FOS)
and P.PI_SITUATION_CD IN ('F','S')
and p.province_state in ('17','42','60','01')
group by m.year
,'Shallow Water <1000 Feet'
,'Deep Water 1000-5000 Feet'
,'Ultra Deep Water > 5000 Feet'
order by m.year
i am getting output is
Year Depth Group Depth Group Depth Group Ytd Oil
2000 a b c 200
2001 a b c 150
2002 a b c 110
2003 a b c 100
but i need output like the below format
Year Depth Group Ytd Oil
2000 a 200
2000 b 200
2000 c 200
2000Total 600
2001 a 150
2001 b 150
2001 c 150
2001Total 450
2002 a 110
2002 b 110
2002 c 110
2002Total 330
2003 a 100
2003 b 100
2003 c 100
2003Total 300
could you please help on this ?UNPIVOT is equal to:
with t1 as (select 'a' f1, 1 f2, 2 f3, 3 f4 from dual union all
select 'b', 4, 5, 6 from dual union all
select 'c', 7, 8, 9 from dual union all
select 'd', 10, 11, 12 from dual)
select a.f1, b.f,
case b.f
when 'F2' then a.f2
when 'F3' then a.f3
when 'F4' then a.f4
end res
from t1 a, (select 'F2' f from dual union all
select 'F3' f from dual union all
select 'F4' f from dual) b
order by 1, 2 -
Hi All,
working in animation project to be broadcasted on a TV channel as HD1080 50i,
1- all the animation layers was rendered from TOONBOOM as .SWF to keep it in vector for compositing issue.
Dose SWF lose any quality? we always use TGA sequence with alpha in our past SD projects but now we found SWF is a smaller file size and allows zooming Because it keeps all vector lines.
2- compositing each scene in after effects cs6 and then render them.
What is the best format for output to deal with premiere cs6 as a real time playback ( my editing pc includes gtx680 4gb., many HGST 3tb with raid controller,64g ram, aja kona 3g) so do I go with TGA sequence (I think it will destroy the raid Because of the large number of small-sized files in read and write ) or MOV uncompressed (I'm afraid of the space size and don’t know it will play in real time ) or what is the best compressed format Maintaining video image quality as its now will be my only master source?
Many thanks,
sherifThanks Rick for your reply,
Regarding the SWF i moved to flash pro forums and they are supporting me now,
My system is a pc, win.64, I7-3930K, 64G RAM, EVGA GTX680 4G, Many HGST 3TB with raid controler,
Some advised me to go with Quicktime Prores HQ or DNXHD or DPX ,
In this year project my client's requirement for delivery is :
DNxHD 120 Codec, wrapped with QuickTime rapper, which means a file with MOV extension and the codec used is DNxHD 120 ( 1080@50i HD)
So do i work with dnxhd 120 from the beginning to the delivery? (and it will be my only master source) or another format encode it at the end to dnxhd 120? ( i will distribut this project to many channels after the first run exclusivity period end with different requirements).
Thanks,
Sherif -
i am on windows 8 platform, i used adobe elements to work on my image - the output is in dng format, how do i convert this to jpg format?
When you make a DNG that's like making another raw file, so you will need to convert the DNG file just like your original raw. Don't use the Save button in the raw converter. That's just a link to the DNG converter. Normally you would click Open instead and then save in the editor as a jpg or other image format of your choice.
-
Changing the file format of spool output when scheduling a background job.
Hello Experts,
I have an issue. It is related to Spool output format. I created a job for one report program for which the output is a list output. I have added one recipient in the 'Spool list recipient' while creating the job SM36. After the job is finished the spool output is sent to the recipient mail id as .htm format as an attachment. But the attachment should be excel sheet or text file. No coding in the program should be used to convert the file format. Only settings in the spool while creating job should be manipulated. Please help me in solving this issue.
Regards.Hi Sunil,
You can use the logic for converting spool to PDF using program : RSTXPDFT4 . Alternatively you can use FM: CONVERT_ABAPSPOOLJOB_2_PDF . In this FM you need to pass the Spool id .
u can make use of these FM's SO_DOCUMENT_SEND_API1
SO_NEW_DOCUMENT_SEND_API1
Check out the following wiki:
https://wiki.sdn.sap.com/wiki/display/Snippets/ConvertsspoolrequestintoPDFdocumentand+emails
hope this will use full to you.
Thanks!! -
Need help in modifing the following code to display required output
Hi this is the code which i am going to displayoutput here i used FM VRM_SET_VALUES for getting dropdown box when i used it my output race field is not getting any values and blank space is getting displayed
what i want is just i need to display the output according to the selection screen
and the other fields in the selection screen except 'p_gender' are also giving problem when i am keeping where condition to link selection screen
can any one please help me in getting the required output according to selection by modifing the following code
TABLES: pernr,t5u13,cskt , t001p,t500p, t501t,t503t,t513s,t527x,t529t,t530t, t5uaa.
TYPE-POOLS: slis, vrm.
INFOTYPES: 0000, "Actions
0001, "Org Assignment
0002, "Personal Data
0006, "Address
0008, "Basic Pay
0041, "Date Specifications
0077. "Additional Personal Data
CONSTANTS: gc_x TYPE c VALUE 'X',
g_w(1) TYPE c VALUE 'W',
g_h(1) TYPE c VALUE 'H',
g_af(2) TYPE c VALUE 'AF',
g_ai(2) TYPE c VALUE 'AI',
g_01(2) TYPE c VALUE 'R1',
g_02(2) TYPE c VALUE 'R2',
g_03(2) TYPE c VALUE 'R3',
g_05(2) TYPE c VALUE 'R5'.
TYPES : BEGIN OF t_roster,
pernr TYPE p0001-pernr,
ssn TYPE p0002-perid,
first_name TYPE p0002-vorna,
last_name TYPE p0002-nachn,
city TYPE t500p-ort01,
state TYPE t500p-regio,
zipcode TYPE t500p-pstlz,
hire_date(10) TYPE c,
lhire_date(10) TYPE c,
serv_date(10) TYPE c,
eg TYPE p0001-persg,
eg_desc TYPE t501t-ptext,
esg TYPE p0001-persk,
esg_desc TYPE t503t-ptext,
race TYPE p0077-rac01,
*** TYPE p0002-gesch,
job_grade TYPE p0008-trfgr,
job_level TYPE p0008-trfst,
grade_entry_date(10) TYPE c,
job_title TYPE p0001-plans,
title(30) TYPE c,
job_code TYPE p0001-stell,
job_code_desc TYPE t513s-stltx,
job_entry_date(10) TYPE c,
annual_sal TYPE p0008-ansal,
hrly_rate TYPE p0008-bet01,
org_unit TYPE p0001-orgeh,
orgtx(40) TYPE c,
cost_cntr TYPE p0001-kostl,
ltext(40) TYPE c,
personal_area TYPE p0001-werks,
personal_area_desc TYPE t500p-name1,
supervisor(30) TYPE c,
flsa TYPE t5u13-exmpt,
ee01 TYPE t5u13-eeoct,
job_grp TYPE p0001-stell,
aap_code TYPE t5u13-aapct,
aap_code_desc TYPE t5uaa-ltext,
dob TYPE p0002-gbdat,
psa TYPE p0001-btrtl,
psa_desc TYPE t001p-btext,
unionl TYPE p0001-btrtl,
unionc TYPE p0001-btrtl,
END OF t_roster.
DATA : gi_roster TYPE STANDARD TABLE OF t_roster, gi_objec TYPE STANDARD TABLE OF objec,
gi_hrp1000 TYPE STANDARD TABLE OF hrp1000,
gi_cskt TYPE STANDARD TABLE OF cskt,
gi_t001p TYPE STANDARD TABLE OF t001p,
gi_t500p TYPE STANDARD TABLE OF t500p,
gi_t501t TYPE STANDARD TABLE OF t501t,
gi_t503t TYPE STANDARD TABLE OF t503t,
gi_t513s TYPE STANDARD TABLE OF t513s,
gi_t527x TYPE STANDARD TABLE OF t527x,
gi_t529t TYPE STANDARD TABLE OF t529t,
gi_t530t TYPE STANDARD TABLE OF t530t,
gi_t5u13 TYPE STANDARD TABLE OF t5u13,
gi_t5uaa TYPE STANDARD TABLE OF t5uaa.
DATA : gs_roster TYPE t_roster,
gs_objec TYPE objec,
gs_hrp1000 TYPE hrp1000,
gs_cskt TYPE cskt,
gs_t001p TYPE t001p,
gs_t500p TYPE t500p,
gs_t501t TYPE t501t,
gs_t503t TYPE t503t,
gs_t513s TYPE t513s,
gs_t527x TYPE t527x,
gs_t529t TYPE t529t,
gs_t530t TYPE t530t,
gs_t5u13 TYPE t5u13,
gs_t5uaa TYPE t5uaa.
DATA : gv_ltext(40) TYPE c,
gv_ltext1(40) TYPE c,
gv_age(3) TYPE c,
gv_butxt(40) TYPE c,
gv_eeoc(10) TYPE c,
gv_prevdate TYPE datum.
DATA: gi_fieldcat TYPE slis_t_fieldcat_alv,
gs_fieldcat TYPE slis_fieldcat_alv,
i_top_of_page TYPE slis_t_listheader,
g_repid TYPE sy-repid,
g_save,
gs_layout TYPE slis_layout_alv,
gt_events TYPE slis_t_event,
gs_variant LIKE disvariant,
gi_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.
DATA: name TYPE vrm_id,
list TYPE vrm_values,
value LIKE LINE OF list.
SELECTION-SCREEN BEGIN OF BLOCK b1
WITH FRAME TITLE text-x02.
PARAMETERS : p_race(10) AS LISTBOX VISIBLE LENGTH 30,
p_gender TYPE p0002-gesch,
p_eeoc TYPE t5u13-eeoct,
p_aap TYPE t5u13-aapct.
SELECTION-SCREEN END OF BLOCK b1.
AT SELECTION-SCREEN OUTPUT.
REFRESH list.
name = 'P_RACE'.
value-key = 'R1'.
value-text = 'American Indian or Alaskan Native'.
APPEND value TO list.
CLEAR value.
value-key = 'R2'.
value-text = 'Asian'.
APPEND value TO list.
CLEAR value.
value-key = 'R3'.
value-text = 'Black or African American'.
APPEND value TO list.
CLEAR value.
value-key = 'R5'.
value-text = 'White'.
APPEND value TO list.
CLEAR value.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = name
values = list
EXCEPTIONS
id_illegal_name = 1
OTHERS = 2.
INITIALIZATION.
g_repid = sy-repid.
PERFORM layout_init USING gs_layout.
PERFORM eventtab_build USING gt_events[].
gs_variant-report = g_repid.
g_save = 'A'.
START-OF-SELECTION.
GET pernr.
PERFORM roster_aap.
END-OF-SELECTION.
PERFORM fetch_roster_text.
PERFORM output_roster_display.
*& Form ROSTER_AAP
text
--> p1 text
<-- p2 text
FORM roster_aap .
PERFORM infty_rost_0001.
PERFORM infty_rost_0002.
PERFORM infty_rost_0008.
PERFORM infty_rost_0041.
PERFORM infty_rost_0077.
PERFORM supervisor_rost.
PERFORM append_rost_recs.
ENDFORM. " ROSTER_AAP
*& Form INFTY_ROST_0001
text
FORM infty_rost_0001 .
rp_provide_from_last p0001 space
pn-begda pn-endda.
IF pnp-sw-found = 1.
gs_roster-pernr = p0001-pernr.
gs_roster-eg = p0001-persg.
READ TABLE gi_t501t INTO gs_t501t WITH KEY persg = p0001-persg.
IF sy-subrc <> 0.
APPEND gs_t501t TO gi_t501t.
CLEAR gs_t501t.
ENDIF.
gs_roster-esg = p0001-persk.
READ TABLE gi_t503t INTO gs_t503t WITH KEY persk = p0001-persk.
IF sy-subrc <> 0.
APPEND gs_t503t TO gi_t503t.
CLEAR gs_t503t.
ENDIF.
gs_roster-job_title = p0001-plans.
READ TABLE gi_hrp1000 INTO gs_hrp1000 WITH KEY objid = p0001-plans.
IF sy-subrc <> 0.
APPEND gs_hrp1000 TO gi_hrp1000.
CLEAR gs_hrp1000.
ENDIF.
gs_roster-job_code = p0001-stell.
READ TABLE gi_t513s INTO gs_t513s WITH KEY stell = p0001-stell.
IF sy-subrc <> 0.
APPEND gs_t513s TO gi_t513s.
CLEAR gs_t513s.
ENDIF.
gs_roster-org_unit = p0001-orgeh.
READ TABLE gi_t527x INTO gs_t527x WITH KEY orgeh = p0001-orgeh.
IF sy-subrc <> 0.
APPEND gs_t527x TO gi_t527x.
CLEAR gs_t527x.
ENDIF.
gs_roster-cost_cntr = p0001-kostl.
READ TABLE gi_cskt INTO gs_cskt WITH KEY kostl = p0001-kostl.
IF sy-subrc <> 0.
APPEND gs_cskt TO gi_cskt.
CLEAR gs_cskt.
ENDIF.
gs_roster-personal_area = p0001-werks.
READ TABLE gi_t500p INTO gs_t500p WITH KEY persa = p0001-werks.
IF sy-subrc <> 0.
APPEND gs_t500p TO gi_t500p.
CLEAR gs_t500p.
ENDIF.
gs_roster-job_grp = p0001-stell.
READ TABLE gi_t5u13 INTO gs_t5u13 WITH KEY stell = p0001-stell.
IF sy-subrc <> 0.
APPEND gs_t5u13 TO gi_t5u13.
CLEAR gs_t5u13.
ENDIF.
READ TABLE gi_t5uaa INTO gs_t5uaa WITH KEY aapct = gs_roster-aap_code.
IF sy-subrc <> 0.
APPEND gs_t5uaa TO gi_t5uaa.
CLEAR gs_t5uaa.
ENDIF.
gs_roster-psa = p0001-btrtl.
READ TABLE gi_t001p INTO gs_t001p WITH KEY btrtl = p0001-btrtl.
IF sy-subrc <> 0.
APPEND gs_t001p TO gi_t001p.
CLEAR gs_t001p.
ENDIF.
gs_roster-unionl = p0001-btrtl.
gs_roster-unionc = p0001-btrtl.
ENDIF.
ENDFORM. " INFTY_ROST_0001
*& Form INFTY_ROST_0002
text
FORM infty_rost_0002 .
rp_provide_from_last p0002 space
pn-begda pn-endda.
IF pnp-sw-found = 1.
IF p_gender IS NOT INITIAL AND p_gender NE p0002-gesch.
REJECT.
ENDIF.
gs_roster-ssn = p0002-perid.
gs_roster-first_name = p0002-vorna.
gs_roster-last_name = p0002-nachn.
gs_roster-*** = p0002-gesch.
gs_roster-dob = p0002-gbdat.
ENDIF.
ENDFORM. " INFTY_ROST_0002
*& Form INFTY_ROST_0008
text
FORM infty_rost_0008 .
DATA: lv_wage TYPE lgart,
lv_amount TYPE pad_amt7s.
rp_provide_from_last p0008 space
pn-begda pn-endda.
IF pnp-sw-found = 1.
gs_roster-annual_sal = p0008-ansal.
DO 40 TIMES VARYING lv_wage FROM p0008-lga01
NEXT p0008-lga02
VARYING lv_amount FROM p0008-bet01
NEXT p0008-bet02.
IF lv_wage = '0101'.
gs_roster-hrly_rate = lv_amount.
EXIT.
ENDIF.
ENDDO.
gs_roster-job_grade = p0008-trfgr.
gs_roster-job_level = p0008-trfst.
ENDIF.
ENDFORM. " INFTY_ROST_0008
*& Form INFTY_ROST_0041
text
FORM infty_rost_0041 .
DATA : l_date TYPE datum,
l_hdate TYPE datum,
l_sdate TYPE datum.
rp_provide_from_last p0041 space
pn-begda pn-endda.
IF pnp-sw-found = 1.
CLEAR : l_date,
l_hdate,
l_sdate.
*--Last Hire Date--
CALL FUNCTION 'HR_DATESPECIFICATION_DATE_GET'
EXPORTING
p0041 = p0041
p_datar = 'U1'
P_DATKN =
IMPORTING
p_date = l_date
EXCEPTIONS
illegal_arguments = 1
more_than_one_date = 2
OTHERS = 3
IF sy-subrc <> 0.
ENDIF.
IF NOT l_date IS INITIAL.
CONCATENATE
l_date4(2) l_date6(2) l_date+0(4)
INTO gs_roster-hire_date
SEPARATED BY '/'.
ENDIF.
ENDIF.
*--Last Hire Date--
CALL FUNCTION 'HR_DATESPECIFICATION_DATE_GET'
EXPORTING
p0041 = p0041
p_datar = 'U2'
P_DATKN =
IMPORTING
p_date = l_hdate
EXCEPTIONS
illegal_arguments = 1
more_than_one_date = 2
OTHERS = 3
IF sy-subrc <> 0.
ENDIF.
IF NOT l_hdate IS INITIAL.
CONCATENATE
l_hdate4(2) l_hdate6(2) l_hdate+0(4)
INTO gs_roster-lhire_date
SEPARATED BY '/'.
ENDIF.
*--Service Date--
CALL FUNCTION 'HR_DATESPECIFICATION_DATE_GET'
EXPORTING
p0041 = p0041
p_datar = 'U4'
P_DATKN =
IMPORTING
p_date = l_sdate
EXCEPTIONS
illegal_arguments = 1
more_than_one_date = 2
OTHERS = 3
IF sy-subrc <> 0.
ENDIF.
IF NOT l_sdate IS INITIAL.
CONCATENATE
l_sdate4(2) l_sdate6(2) l_sdate+0(4)
INTO gs_roster-serv_date
SEPARATED BY '/'.
ENDIF.
ENDFORM. " INFTY_ROST_0041
*& Form INFTY_ROST_0077
text
FORM infty_rost_0077 .
DATA: lv_race TYPE races.
rp_provide_from_last p0077 space
pn-begda pn-endda.
IF pnp-sw-found = 1.
IF NOT p_race IS INITIAL AND p_race NE lv_race.
REJECT.
ENDIF.
DO 10 TIMES VARYING lv_race FROM p0077-rac01
NEXT p0077-rac02.
IF lv_race NE space.
IF lv_race EQ g_01.
gs_roster-race = g_ai.
ELSEIF lv_race EQ g_02.
gs_roster-race = g_h.
ELSEIF lv_race EQ g_03.
gs_roster-race = g_af.
ELSEIF lv_race EQ g_05.
gs_roster-race = g_w.
ENDIF.
ENDIF.
ENDDO.
ENDIF.
ENDFORM. " INFTY_ROST_0077
*& Form SUPERVISOR_ROST
text
FORM supervisor_rost .
REFRESH gi_objec.
IF NOT p0001-orgeh IS INITIAL.
CALL FUNCTION 'HRCM_ORGUNIT_MANAGER_GET'
EXPORTING
plvar = '01'
otype = 'O'
objid = p0001-orgeh
begda = pn-begda
endda = pn-endda
PATH_ID = ' '
TABLES
manager_info_table = gi_objec
EXCEPTIONS
path_error = 1
root_error = 2
nothing_found = 3
OTHERS = 4
IF sy-subrc <> 0.
ENDIF.
SORT gi_objec DESCENDING BY endda.
READ TABLE gi_objec INTO gs_objec INDEX 1.
IF sy-subrc = 0.
gs_roster-supervisor = gs_objec-stext.
CLEAR gs_objec.
ENDIF.
ENDIF.
ENDFORM. " SUPERVISOR_ROST
*& Form APPEND_ROST_RECS
text
FORM append_rost_recs .
IF NOT gs_roster-pernr IS INITIAL.
APPEND gs_roster TO gi_roster.
CLEAR gs_roster.
ENDIF.
ENDFORM. " APPEND_ROST_RECS
*& Form FETCH_ROSTER_TEXT
text
FORM fetch_roster_text .
IF p_eeoc IS NOT INITIAL AND p_eeoc NE t5u13-eeoct.
REJECT.
ENDIF.
IF NOT gi_roster IS INITIAL.
SELECT orgeh orgtx FROM t527x
INTO CORRESPONDING FIELDS OF TABLE gi_t527x
WHERE sprsl = sy-langu AND
endda = '99991231'.
SELECT persa ort01 regio pstlz name1
FROM t500p
INTO CORRESPONDING FIELDS OF TABLE gi_t500p.
SELECT persg ptext
FROM t501t
INTO CORRESPONDING FIELDS OF TABLE gi_t501t
WHERE sprsl = sy-langu.
SELECT persk ptext
FROM t503t
INTO CORRESPONDING FIELDS OF TABLE gi_t503t
WHERE sprsl = sy-langu.
SELECT stell stltx FROM t513s
INTO CORRESPONDING FIELDS OF TABLE gi_t513s
WHERE sprsl = sy-langu AND
endda = '99991231'.
SELECT otype plvar objid stext
FROM hrp1000 INTO
CORRESPONDING FIELDS OF TABLE gi_hrp1000
for all entries in gi_roster
WHERE plvar = '01'
AND otype = 'S'.
and objid = gi_roster-job_title.
SELECT stell eeoct exmpt aapct
FROM t5u13
INTO CORRESPONDING FIELDS OF TABLE gi_t5u13.
for all entries in gi_t5u13
WHERE stell = gi_t5u13-stell
AND eeoct = p_eeoc
AND aapct = p_aap.
SELECT aapct eeoct ltext
FROM t5uaa
INTO CORRESPONDING FIELDS OF TABLE gi_t5uaa.
FOR ALL ENTRIES IN gi_roster
WHERE aapct = gi_roster-aap_code
and eeoct = gi_roster-ee01.
SELECT kostl ltext
FROM cskt
INTO CORRESPONDING FIELDS OF TABLE gi_cskt
FOR ALL ENTRIES IN gi_roster
WHERE kostl = gi_roster-cost_cntr
WHERE spras = sy-langu.
SELECT btrtl btext
FROM t001p
INTO CORRESPONDING FIELDS OF TABLE gi_t001p.
FOR ALL ENTRIES IN gi_roster
WHERE btrtl = gi_roster-psa.
ENDIF.
LOOP AT gi_roster INTO gs_roster.
CLEAR :gs_hrp1000,gs_t5u13,gs_t500p,gs_t501t,gs_t503t,gs_t5uaa,gs_cskt,gs_t001p,gs_t513s, gs_t527x,gs_t529t,gs_t530t.
READ TABLE gi_t501t INTO gs_t501t WITH KEY persg = gs_roster-eg.
IF sy-subrc = 0.
gs_roster-eg_desc = gs_t501t-ptext.
ENDIF.
READ TABLE gi_t503t INTO gs_t503t WITH KEY persk = gs_roster-esg.
IF sy-subrc = 0.
gs_roster-esg_desc = gs_t503t-ptext.
ENDIF.
READ TABLE gi_t513s INTO gs_t513s
WITH KEY stell = gs_roster-job_code.
IF sy-subrc = 0.
gs_roster-job_code_desc = gs_t513s-stltx.
ENDIF.
READ TABLE gi_t527x INTO gs_t527x
WITH KEY orgeh = gs_roster-org_unit.
IF sy-subrc = 0.
gs_roster-orgtx = gs_t527x-orgtx.
ENDIF.
READ TABLE gi_hrp1000 INTO gs_hrp1000 WITH KEY objid = gs_roster-job_title.
IF sy-subrc = 0.
gs_roster-title = gs_hrp1000-stext.
ENDIF.
READ TABLE gi_cskt INTO gs_cskt
WITH KEY kostl = gs_roster-cost_cntr.
IF sy-subrc = 0.
gs_roster-ltext = gs_cskt-ltext.
ENDIF.
READ TABLE gi_t5u13 INTO gs_t5u13 WITH KEY stell = gs_roster-job_code.
IF sy-subrc = 0.
gs_roster-ee01 = gs_t5u13-eeoct.
gs_roster-flsa = gs_t5u13-exmpt.
gs_roster-aap_code = gs_t5u13-aapct.
ENDIF.
READ TABLE gi_t500p INTO gs_t500p WITH KEY persa = gs_roster-personal_area.
IF sy-subrc = 0.
gs_roster-city = gs_t500p-ort01.
gs_roster-state = gs_t500p-regio.
gs_roster-zipcode = gs_t500p-pstlz.
gs_roster-personal_area_desc = gs_t500p-name1.
ENDIF.
READ TABLE gi_t001p INTO gs_t001p WITH KEY btrtl = gs_roster-psa.
IF sy-subrc = 0.
gs_roster-psa_desc = gs_t001p-btext.
ENDIF.
READ TABLE gi_t5uaa INTO gs_t5uaa WITH KEY aapct = gs_roster-aap_code eeoct = gs_roster-ee01.
IF sy-subrc = 0.
gs_roster-aap_code_desc = gs_t5uaa-ltext.
ENDIF.
MODIFY gi_roster FROM gs_roster .
ENDLOOP.
ENDFORM. " FETCH_ROSTER_TEXT
*& Form OUTPUT_ROSTER_DISPLAY
text
FORM output_roster_display .
PERFORM build_roster_fieldcatalog.
PERFORM comment_roster_build CHANGING i_top_of_page[].
PERFORM display_roster_alv_report.
ENDFORM. " OUTPUT_ROSTER_DISPLAY
*& Form LAYOUT_INIT
text
FORM layout_init USING rs_layout TYPE slis_layout_alv.
rs_layout-detail_popup = 'X'.
rs_layout-zebra = 'X'.
rs_layout-colwidth_optimize = 'X'.
ENDFORM. " LAYOUT_INIT
*& Form EVENTTAB_BUILD
text
FORM eventtab_build USING rt_events TYPE slis_t_event.
*"Registration of events to happen during list display
DATA: ls_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = rt_events.
READ TABLE rt_events WITH KEY name = slis_ev_top_of_page
INTO ls_event.
IF sy-subrc = 0.
MOVE gi_top_of_page TO ls_event-form.
APPEND ls_event TO rt_events.
ENDIF.
ENDFORM. " EVENTTAB_BUILD
*& Form top_of_page
text
FORM top_of_page.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = i_top_of_page.
ENDFORM. "TOP_OF_PAGE
*& Form BUILD_ROSTER_FIELDCATALOG
text
FORM build_roster_fieldcatalog .
gs_fieldcat-fieldname = 'PERNR'.
gs_fieldcat-seltext_m = 'Employee Number'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'SSN'.
gs_fieldcat-seltext_m = 'SSN Number'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'FIRST_NAME'.
gs_fieldcat-seltext_m = 'First Name'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'LAST_NAME'.
gs_fieldcat-seltext_m = 'Last Name'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'CITY'.
gs_fieldcat-seltext_m = 'City'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'STATE'.
gs_fieldcat-seltext_m = 'State'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ZIPCODE'.
gs_fieldcat-seltext_m = 'Zip Code'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'HIRE_DATE'.
gs_fieldcat-seltext_m = 'Hire Date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'LHIRE_DATE'.
gs_fieldcat-seltext_m = 'Last Hire Date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'SERV_DATE'.
gs_fieldcat-seltext_m = 'Service Date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'EG'.
gs_fieldcat-seltext_m = 'Eg'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'EG_DESC'.
gs_fieldcat-seltext_m = 'Eg Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ESG'.
gs_fieldcat-seltext_m = 'Esg'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ESG_DESC'.
gs_fieldcat-seltext_m = 'Eg Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'RACE'.
gs_fieldcat-seltext_m = 'Race'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = '***'.
gs_fieldcat-seltext_m = '***'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_GRADE'.
gs_fieldcat-seltext_m = 'Job Grade'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_LEVEL'.
gs_fieldcat-seltext_m = 'Job Level'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'GRADE_ENTRY_DATE'.
gs_fieldcat-seltext_l = 'Grade Entry Date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_TITLE'.
gs_fieldcat-seltext_l = 'Job Title'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat..
gs_fieldcat-fieldname = 'TITLE'.
gs_fieldcat-seltext_l = 'Job Title Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_CODE'.
gs_fieldcat-seltext_l = 'Job Code'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_CODE_DESC'.
gs_fieldcat-seltext_l = 'Job Code Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_ENTRY_DATE'.
gs_fieldcat-seltext_l = 'Job Entry Date'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ANNUAL_SAL'.
gs_fieldcat-seltext_l = 'Annual Salary'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'HRLY_RATE'.
gs_fieldcat-seltext_l = 'Hourly Rate'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ORG_UNIT'.
gs_fieldcat-seltext_l = 'Org Unit'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'ORGTX'.
gs_fieldcat-seltext_l = 'Org Text'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'COST_CNTR'.
gs_fieldcat-seltext_l = 'Cost Center'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'LTEXT'.
gs_fieldcat-seltext_l = 'Cost Center Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'PERSONAL_AREA'.
gs_fieldcat-seltext_l = 'Personal Area'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'PERSONAL_AREA_DESC'.
gs_fieldcat-seltext_l = 'Personal Area Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'SUPERVISOR'.
gs_fieldcat-seltext_l = 'Supervisor'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'FLSA'.
gs_fieldcat-seltext_l = 'FLSA'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'EE01'.
gs_fieldcat-seltext_l = 'EE01'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'JOB_GRP'.
gs_fieldcat-seltext_l = 'Job Group'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'AAP_CODE'.
gs_fieldcat-seltext_l = 'AAP Code'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'AAP_CODE_DESC'.
gs_fieldcat-seltext_l = 'AAP Code Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'DOB'.
gs_fieldcat-seltext_l = 'Date of Birth'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'PSA'.
gs_fieldcat-seltext_l = 'Personal Sub Area'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'PSA_DESC'.
gs_fieldcat-seltext_l = 'Personal Sub Area Description'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'UNIONL'.
gs_fieldcat-seltext_l = 'Union Local'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
gs_fieldcat-fieldname = 'UNIONC'.
gs_fieldcat-seltext_l = 'Union Classfication'.
APPEND gs_fieldcat TO gi_fieldcat.
CLEAR gs_fieldcat.
ENDFORM. " BUILD_ROSTER_FIELDCATALOG
*& Form COMMENT_ROSTER_BUILD
text
FORM comment_roster_build CHANGING top_of_page TYPE
slis_t_listheader.
DATA: ls_line TYPE slis_listheader,
l_startdate(10) TYPE c,
l_enddate(10) TYPE c,
l_final_start(22) TYPE c,
l_final_end(22) TYPE c.
CONCATENATE pn-begda4(2)'/'pn-begda6(2)'/'pn-begda+0(4)
INTO l_startdate.
CONCATENATE pn-endda4(2)'/'pn-endda6(2)'/'pn-endda+0(4)
INTO l_enddate.
CONCATENATE 'Start Date:' l_startdate INTO l_final_start.
CONCATENATE 'End Date :' l_enddate INTO l_final_end.
CLEAR ls_line.
ls_line-typ = 'H'.
ls_line-info = 'AAP-EEOC Roster Report Data '. "Max len = 60
APPEND ls_line TO i_top_of_page.
CLEAR ls_line.
ls_line-typ = 'S'.
ls_line-info = l_final_start.
APPEND ls_line TO i_top_of_page.
CLEAR ls_line.
ls_line-typ = 'S'.
ls_line-info = l_final_end.
APPEND ls_line TO i_top_of_page.
CLEAR ls_line.
ENDFORM. " COMMENT_ROSTER_BUILD
*& Form DISPLAY_ROSTER_ALV_REPORT
text
FORM display_roster_alv_report .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = g_repid
is_layout = gs_layout
it_fieldcat = gi_fieldcat
i_save = g_save
is_variant = gs_variant
it_events = gt_events[]
TABLES
t_outtab = gi_roster
EXCEPTIONS
program_error = 1
OTHERS = 2
IF sy-subrc <> 0.
ENDIF.
ENDFORM. " DISPLAY_ROSTER_ALV_REPORT
Regards
sachinhi there,
i want to fetch data from all the fields i ahve given here .It will be a join statement.
the important thing is I need all the values of vbeln in leftside
as output. -
How do I copy/paste full numerical-only account strings into the Projects WebADI template when the account segment fields in the template require use of the dropdown because they're formatted as alpha-numeric values? I'm using the Integrator named "Projects - Transaction Import" and a custom Layout created based on the seeded Layout named "Transaction Import - Accounted". Do I need to somehow change my Layout to make the Document accept numerical values instead of requiring alpha-numeric values? I need to be able to populate the Document with a large amount of transactions and cannot feasibly go through every transaction to add the alpha-valued name of the account segment to every segment that requires it. The segments in particular causing the problem are "Expnd Type" and "Organization Name" which are both alpha-numeric and as such contain the segment number and name; I need to be able to only have to enter the Natural Account Number (6-digit number only) and the Organization Number (5-digit number only).
How do I copy/paste full numerical-only account strings into the Projects WebADI template when the account segment fields in the template require use of the dropdown because they're formatted as alpha-numeric values? I'm using the Integrator named "Projects - Transaction Import" and a custom Layout created based on the seeded Layout named "Transaction Import - Accounted". Do I need to somehow change my Layout to make the Document accept numerical values instead of requiring alpha-numeric values? I need to be able to populate the Document with a large amount of transactions and cannot feasibly go through every transaction to add the alpha-valued name of the account segment to every segment that requires it. The segments in particular causing the problem are "Expnd Type" and "Organization Name" which are both alpha-numeric and as such contain the segment number and name; I need to be able to only have to enter the Natural Account Number (6-digit number only) and the Organization Number (5-digit number only).
-
With Java 1.4.2:
What is the correct way to format output in the java.io.PrintStream?
The following is incorrect, even though it is still used in the The JavaTM Tutorial at: http://java.sun.com/docs/books/tutorial/essential/
System.out.formatThis returns "cannot resolve the method 'format'"
Any detailed suggestions or information is greatly appreciated.The following is incorrect, even though it is still
used in the The JavaTM Tutorial at:
http://java.sun.com/docs/books/tutorial/essential/
The whole format thing has been introduced in 1.5. The tutorial also states it's been "updated to 1.5.".
That's all I've got to say for I don't know how you can format a PrintWriter, let alone a PrintStream, prior to 1.5. I'm not really sure there is any way. Any "legacy way", that is. There almost certainly are third-party API which achieve similar results. -
JavaHelp 1.0 is required to view the JavaHelp output?????
Hi All,
I'm getting this dialog after I have generated the JavaHelp.
"JavaHelp 1.0 is required to view the JavaHelp output. Please
install the latest version of JavaHelp"
But I have allready installed this "C:\jh1.1.3" and inserted
these 2 System variables "JAVAHELP_HOME" - "C:\jh1.1.3" and
"JHHOME" - "C:\jh1.1.3".
I have allso installed "j2sdk1.4.1_01".
What else needs to be done?
BR
ThomasI faintly remember a problem with Robohelp and JH1.1.3 a
couple of years ago, I don't know if this was ever resolved.
I have found the following that might help.
Click Here
Just found a link to the following Forum thread on Peter
Grainge's site
Thread
here
Hope this helps.
Brian -
How to get the output of the report in pdf format
how to get the output of the report in pdf format?
Thanks in advance,
madan.Refer these links
http://www.sap-img.com/bc037.htm
http://www.members.tripod.com/abap4/Save_Report_Output_to_a_PDF_File.html
CONVERT_ABAPSPOOLJOB_2_PDF FM convert abap spool output to PDF -
How to reterive the required output
i want to extract data from two different tables and to create a single table.
first table is gc1
idx suburb_form
1 ALBANY
2 PERTH
3 ALBANY CBD
4 PERTH CBD
SECOND TABLE IS CITIES
ALBANY
PERTH
I WANT TO CREATE A TABLE WHICH SHOULD CONTAIN ALL RECORDS FROM THE GC1 TABLE
I HAVE WRITTEN QUERY LIKE THIS BUT IT DOES NOT WORK.
CREATE TABLE TEMP AS SELECT IDX, SUBURB_foRm FROM GC1 A
WHERE exists(select NULL from POI.SH_POI_SMALL_CITIES C where upper(trim(A.SUBURB_FORM))=C.CITY OR RTRIM(A.SUBURB_FORM,' CBD')) =C.CITY)
PLEASE CAN ANYBODY HELP ME IN ORDER TO GET THE REQUIRED OUTPUT.
tHANKSCONTAIN ALL RECORDS FROM THE GC1 TABLEIn these case, wouldnt just selecting GC1 be sufficient?
CREATE TABLE TEMP AS SELECT IDX, SUBURB_foRm FROM GC1 A
Maybe you are looking for
-
I cannot simply open Word documents. I am forced to save them in order to view them.
In firefox, IE, and chrome, I try to open Word documents and am forced to save them in order to view them. I do not get the box that asks whether I want to save or open (and yes, I have the option to always ask checked in my settings). When I find th
-
Can no longer buy skype credit in Canadian Dollars...
I bought my computer 4 years ago in China. Over there, I paid using my former Chinese bank account. 18 months ago I returned to Canada and started buying skype credit using my Canadian Visa paying in CDN Dollars. The past six months however I can
-
Just set up a new MX892. The photo quality has a hazy pale look to it when printed on reg. 20 lb paper. (the older printer, MX7600, did a better job.) When I print pics through the PhotoPrint EX, the quality is better but the pics are printed in 1/2
-
How to sort data (i.e. sort by last name) in a related ?
Hello, Is there a way to sort automatically records by "last name" in my related "contact" of my account view ? Even manually, we do not have any arrow ! Many thanks and have a nice day.
-
Hi! We are looking into upgrading our intranet files at my company. Right now, although they are effectively "plain vanilla" html, for some reason we have been using the asp format. Our next evolution may involve using FMStudio to allow the intranet