Focal Point Banner


As of December 1, 2020, Focal Point is retired and repurposed as a reference repository. We value the wealth of knowledge that's been shared here over the years. You'll continue to have access to this treasure trove of knowledge, for search purposes only.

Join the TIBCO Community
TIBCO Community is a collaborative space for users to share knowledge and support one another in making the best use of TIBCO products and services. There are several TIBCO WebFOCUS resources in the community.

  • From the Home page, select Predict: WebFOCUS to view articles, questions, and trending articles.
  • Select Products from the top navigation bar, scroll, and then select the TIBCO WebFOCUS product page to view product overview, articles, and discussions.
  • Request access to the private WebFOCUS User Group (login required) to network with fellow members.

Former myibi community members should have received an email on 8/3/22 to activate their user accounts to join the community. Check your Spam folder for the email. Please get in touch with us at community@tibco.com for further assistance. Reference the community FAQ to learn more about the community.


Page 1 2 3 4 

Read-Only Read-Only Topic
Go
Search
Notify
Tools
7.6.2 Snags
 Login/Join
 
Master
posted
Here is a list of problems encountered with 7.6.2. I hope people might add their own experiences to this list.

1. Dont add the MRE library role as suggested in the docs - the array size on the bid has not been adjusted.

2. IF fieldname NE MISSING is now not recognised use WHERE instead

More to come as it happens...



Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2
Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo
 
Posts: 888 | Location: Airstrip One | Registered: October 06, 2006Report This Post
Expert
posted Hide Post
Fun, fun, fun...


Francis


Give me code, or give me retirement. In FOCUS since 1991

Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server
 
Posts: 10577 | Location: Toronto, Ontario, Canada | Registered: April 27, 2005Report This Post
Master
posted Hide Post
Just wondering, does this fail as well?

IF fieldname IS-NOT MISSING
IF fieldname IS MISSING


I had a problem a long time ago when we moved from FOCUS for HP-UX to WebFOCUS where

WHERE fieldname operator MISSING


would not be passed to the database if fieldname was a date but using IF worked. We found the problem when procedures that usually run in a few minutes started taking hours. This was fixed but it sounds like they have errored the other way now.


In FOCUS since 1985. Prod WF 8.0.08 (z90/Suse Linux) DB (Oracle 11g), Self Serv, Report Caster, WebServer Intel/Linux.
 
Posts: 975 | Location: Oklahoma City | Registered: October 27, 2006Report This Post
Master
posted Hide Post
Webfocus Client console - Configuration - Custom Settings

Save button does not become active when you change content. Workaround is to check and uncheck Encrypt check box.



Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2
Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo
 
Posts: 888 | Location: Airstrip One | Registered: October 06, 2006Report This Post
Master
posted Hide Post
7.6.2 DS Bugs

1. Right click copy does not work in Applications

2. Opening a second explorer causes the Play button in the first toolbar to become greyed out.

Doh! not a bug since you have to select the file to run before the option is available...

This message has been edited. Last edited by: hammo1j,



Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2
Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo
 
Posts: 888 | Location: Airstrip One | Registered: October 06, 2006Report This Post
Master
posted Hide Post
ok a real one for ds this time...

The windows list does not show the full filename of the file being edited rather it just shows 'TEXT EDITOR' under certain circumstances - more to follow.



Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2
Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo
 
Posts: 888 | Location: Airstrip One | Registered: October 06, 2006Report This Post
Master
posted Hide Post
Also

CD and CHDIR have been disabled.

This used to cause a lot of problems with the agents because they would retain the directory they had been changed to even though each one should present the user with an entirely fresh context.

On balance a good move but watch out those of you with code that relies on changing directory.



Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2
Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo
 
Posts: 888 | Location: Airstrip One | Registered: October 06, 2006Report This Post
Expert
posted Hide Post
Another one to watch out for due to tightening code?

Works in WF 7.1.3, not in 7.6.2

fieldname/YYMD = HDATE(&YYMD, 'YYMD');

Works in 7.6.2

fieldname/YYMD = HDATE('&YYMD', 'YYMD');

T



In FOCUS
since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2  
WebFOCUS App Studio 8.2.06 standalone on Windows 10 
 
Posts: 5694 | Location: United Kingdom | Registered: April 08, 2004Report This Post
Virtuoso
posted Hide Post
Tony,

I have found through experience that when an &VAR is used in a Dialogue Manager statement (-SET) it should NOT have quotes around it. The opposite is true for DEFINE and COMPUTE.

If using an &VAR is a DEFINE or COMPUTE you should ALWAYS put single quotes around the &VAR name.

It looks like keeping this in mind will avoid the code tightening. Wink


Thanks!

Mickey

FOCUS/WebFOCUS 1990 - 2011
 
Posts: 995 | Location: Gaithersburg, MD, USA | Registered: May 07, 2003Report This Post
Expert
posted Hide Post
What ever happened to consistency? Confused



In FOCUS
since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2  
WebFOCUS App Studio 8.2.06 standalone on Windows 10 
 
Posts: 5694 | Location: United Kingdom | Registered: April 08, 2004Report This Post
Expert
posted Hide Post
This has got to be one of the worst!!

For those of you who use temporary hold files to then use MODIFY to load a pre-existing FOCUS table, and rely upon the hold file master, then try this out (with or without the ASNAMES, FORMAT ALPHA -
TABLE FILE CAR
SUM RCOST DCOST
 BY COUNTRY AS MYCOUNTRY
 ROWS 'ITALY' OVER 'SCOTLAND'
ON TABLE SET ASNAMES ON
ON TABLE HOLD AS TEMPHOLD FORMAT ALPHA
END
-RUN
?FF TEMPHOLD
CMD TYPE TEMPHOLD.mas

The output will be something like this -
 0 NUMBER OF RECORDS IN TABLE=        4  LINES=      1
 FILENAME=  TEMPHOLD
 RETAIL_COST   E02           D7
 DEALER_COST   E03           D7
 FILENAME=TEMPHOLD, SUFFIX=FIX     , $
 SEGMENT=TEMPHOLD, SEGTYPE=S0, $
 FIELDNAME=, ALIAS=E01, USAGE=A  8, ACTUAL=A08,
 MISSING=ON, $
 FIELDNAME=RETAIL_COST, ALIAS=E02, USAGE=D7, ACTUAL=A07,
 MISSING=ON, $
 FIELDNAME=DEALER_COST, ALIAS=E03, USAGE=D7, ACTUAL=A07,
 MISSING=ON, $


What happened to the COUNTRY field? It doesn't appear in the ?FF but there is a space for it within the .mas file. It has also been cropped from A10 to the longest value passed (A08 because of Scotland)!! I use ROWS because I want to force data through, and yes, I know I could use McGyver but ROWS should work equally as well - and did in 7.1.3.

Remove the ROWS syntax and all is well!!

I've had to resort to a SAVE and then set-up a lengthy FIXFORM!!

Case being opened.

T



In FOCUS
since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2  
WebFOCUS App Studio 8.2.06 standalone on Windows 10 
 
Posts: 5694 | Location: United Kingdom | Registered: April 08, 2004Report This Post
Virtuoso
posted Hide Post
I think it has something to do with the extra blank line after the HEADING when using BORDER.

Big Grin Big Grin Big Grin Big Grin

If I can't get consistency with HEADING then you're not allowed to have consistency with HDATE or quotes around &VARs.

Sorry, I just couldn't resist.


Thanks!

Mickey

FOCUS/WebFOCUS 1990 - 2011
 
Posts: 995 | Location: Gaithersburg, MD, USA | Registered: May 07, 2003Report This Post
Expert
posted Hide Post
Mickey,

I was sorely tempted the last time to say something like that but thought better of it!! Wink

T



In FOCUS
since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2  
WebFOCUS App Studio 8.2.06 standalone on Windows 10 
 
Posts: 5694 | Location: United Kingdom | Registered: April 08, 2004Report This Post
Expert
posted Hide Post
Tony,

The ROWS issue has to do with FRL - Masters for HOLD files created by using FRL syntax do not get generated as expected. Very annoying.


Francis


Give me code, or give me retirement. In FOCUS since 1991

Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server
 
Posts: 10577 | Location: Toronto, Ontario, Canada | Registered: April 27, 2005Report This Post
Expert
posted Hide Post
Francis,

FRL? Not using it in this instance ...

Yes I know that ROWS and COLUMNS originated from FRL ideas but all the same, it shouldn't be like this!! Mad

T

This message has been edited. Last edited by: Tony A,



In FOCUS
since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2  
WebFOCUS App Studio 8.2.06 standalone on Windows 10 
 
Posts: 5694 | Location: United Kingdom | Registered: April 08, 2004Report This Post
Virtuoso
posted Hide Post
Tony,

ROWS . . . OVER . . .

is considered part of the FRL, FML or EMR language.

However, this does not explain why it worked in 713 and not in 762.


Thanks!

Mickey

FOCUS/WebFOCUS 1990 - 2011
 
Posts: 995 | Location: Gaithersburg, MD, USA | Registered: May 07, 2003Report This Post
Expert
posted Hide Post
Doesn't work in 5.3.2. Are we sure it works in 7.1.3?

 0 NUMBER OF RECORDS IN TABLE=        4  LINES=      1
 FILENAME=  TEMPHOLD
 RETAIL_COST   E02           D7
 DEALER_COST   E03           D7
 FILE=TEMPHOLD       ,SUFFIX=FIX
 SEGNAME=TEMPHOLD,SEGTYPE=S0
 FIELDNAME   =                   ,E01         ,A  8     ,A08      ,$
 FIELDNAME   =RETAIL_COST        ,E02         ,D7       ,A07      ,$
 FIELDNAME   =DEALER_COST        ,E03         ,D7       ,A07      ,$


Francis


Give me code, or give me retirement. In FOCUS since 1991

Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server
 
Posts: 10577 | Location: Toronto, Ontario, Canada | Registered: April 27, 2005Report This Post
Virtuoso
posted Hide Post
quote:
Originally posted by mgrackin:
Tony,

I have found through experience that when an &VAR is used in a Dialogue Manager statement (-SET) it should NOT have quotes around it. The opposite is true for DEFINE and COMPUTE.

If using an &VAR is a DEFINE or COMPUTE you should ALWAYS put single quotes around the &VAR name.

It looks like keeping this in mind will avoid the code tightening. Wink


The "code tightening" has nothing to do with dialog manager per se. Bear in mind that &YYMD is just a series of digits by the time a Focus command (DEFINE, TABLE, ...) sees it. You will get the same handling if you hard-code the value.

Assignment to a smart date can be either a date literal or an integer offset value, so 20070807 is ambiguous (does it mean '2007 AUG 07', or maybe base date +20,070,807). Quoting the value ('&YYMD', which becomes '20070807') forces interpretation as a date literal.


- Jack Gross
WF through 8.1.05
 
Posts: 1925 | Location: NYC | In FOCUS since 1983 | Registered: January 11, 2005Report This Post
Platinum Member
posted Hide Post
FOCUS never was able to HOLD a FML report because each 'cell' in a column could be a different format.
However, if you use the BY field ROWS method you may be able to print the HOLD file correctly (if you keep all of the columns the same format). The title of the FOR field never was displayable, but you can edit the HOLD file in some cases.


Release 7.6.9
Windows
HTML
 
Posts: 226 | Registered: June 08, 2003Report This Post
Expert
posted Hide Post
Hi Gerry,

That's the point, I am not using FML but I am using BY fieldname ROWS value OVER value etc.

Even then the format of the BY fieldname is being changed to the maximum size of the fieldname up until the point that it matches the size of the original field.

Francis,

Yes, definitely worked in 7.1.3 as it has been for many a month. Only since upgrading Development to 7.6.2 has this become an issue.
The workaround is to use SAVE and then expand the FIXFORM to interpret the incoming fields as they exist without hoping that the HOLD file would have the correct field names within it.

Jack,

Thanks for the clarification Smiler

T



In FOCUS
since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2  
WebFOCUS App Studio 8.2.06 standalone on Windows 10 
 
Posts: 5694 | Location: United Kingdom | Registered: April 08, 2004Report This Post
Expert
posted Hide Post
This has moved on a bit now and it looks as though the FML engine is used when using ROWS (learn something new everyday Wink). However, I still have a problem when attempting to use MODIFY with FIXFORM FROM holdfile, DATA ON holdfile etc.

In 7.1.3, even though the fieldname for the BY field with the ROWS syntax is missing, the data loads OK. Using the same code in 7.6.2 the data gets rejected as DUPL.

In the target MFD there are standard FOCUS alias names used E01, E02 etc. and, of course, the hold file also has matching alias names. So I am wondering whether 7.1.3 can use either the fieldname OR the alias, whereas 7.6.2 can only use the fieldname?

If this is the case then it still means that functionality has changed between releases.

T



In FOCUS
since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2  
WebFOCUS App Studio 8.2.06 standalone on Windows 10 
 
Posts: 5694 | Location: United Kingdom | Registered: April 08, 2004Report This Post
Gold member
posted Hide Post
BID snags:

1) The text editor for advanced analytical users strips out pluses (+) from the source code when saving the FEX.

2) The "maximize contents" icon does not maximize the existing contents on an output block -- it re-executes the launch page.


-- Dan

Prod: WF 7.6.2 Linux BID/MRE/DM -- Test: same
 
Posts: 63 | Registered: March 07, 2006Report This Post
Master
posted Hide Post
This might be a biggy:

The DKU feature that uses an ALIAS to relate the host and cr segment does not work under 7.6.2

Here is the requirement direct from the manual
quote:

field

Is the common name (field name or alias) of the host field and the cross-referenced
field. The field name or alias of the host field must be identical to the field name of the
cross-referenced field. You can change the field name without rebuilding the data source
as long as the SEGTYPE remains the same.
Both fields must have the same format type and length.
The cross-referenced field must be indexed (FIELDTYPE=I or INDEX=I).


In the example below: This is the problem segment.

SEGNAME=EMPLOYEE_COST_EXTENDED, SEGTYPE=DKU, PARENT=EMPLOYEE_COST,CRFILE=NEW_COMPANY_PERSON_ALL,CRSEGNAME=SEG01,CRKEY=CPA_EMP_NO,$

The master file checks ok but when you come to print the segment that formerly was xrefed

eg
TABLE FILE _mats
PRINT SEG.CPA_EMPLOYEE_NAME
END

It mentions that CPA_EMPLOYEE_NAME is a non existent field.

However it must be doing something with this segment as we have had a batch job fail with
an agent abort until this segment was removed from the master. So it looks like the master parsing routine is corrupting memory when faced with this.

NB This works totally fine with 7.1.3. So beware in 7.6.2 if you use a lot of DKU type segments you are probably going to have problems!

Host file
FILE=_mats, SUFFIX=XFOC, REMARK='Materials Reporting View'

$=======================================================================================================
$ Project Details
$=======================================================================================================
SEGNAME=PROJECT, SEGTYPE=S1, $
  FIELD=PRJ_PROJECT_ID,  USAGE=A10,  MISSING=ON, TITLE='Project,id',DESCRIPTION='Project id', $
  FIELD=PRJ_NAME,  USAGE=A35,  MISSING=ON, TITLE='Project,Name',DESCRIPTION='Project Name', $
  FIELD=PRJ_STATE,  USAGE=A11,  MISSING=ON, TITLE='Status',DESCRIPTION='Status Approved Started Complete Freeze Close', $
  FIELD=PRJ_OBJVERSION,  USAGE=A14,  MISSING=ON, TITLE='Project,Timestamp',DESCRIPTION='Project Timestamp', $
  FIELD=PRJ_ACCESS_ON_OFF,  USAGE=P1,  MISSING=ON, TITLE='Project,Access,On,Off',DESCRIPTION='Project Access On Off', $

$=======================================================================================================
$ Activity Details
$=======================================================================================================
SEGNAME=ACTIVITY, SEGTYPE=S1, PARENT=PROJECT, $
  FIELD=ACT_ACTIVITY_SEQ,  USAGE=P9,  MISSING=ON, TITLE='Activity,Seq',DESCRIPTION='Activity Seq', $
  FIELD=ACT_DIRECT_COST, USAGE=P1,  MISSING=ON, TITLE='Direct,Cost,to,Project,Activity',DESCRIPTION='Direct Cost to this Project Activity', $
  FIELD=ACT_EQUIV_WO_NO,  USAGE=P6S,  MISSING=ON, TITLE='Activity,equiv,Work,Order',DESCRIPTION='Work Order if this the only work order and no Costs direct to Work Order', $
  FIELD=ACT_WO_CNT, USAGE=P4,  MISSING=ON, TITLE='Work,Order,Count',DESCRIPTION='Work Orders for this Activity', $
  FIELD=ACT_SHT_DESCRIPTION,  USAGE=A50,  MISSING=ON, TITLE='Activity,Description',DESCRIPTION='Activity Description', $
  FIELD=ACT_STATUS,  USAGE=A9, MISSING=ON, TITLE='Activity,Status',DESCRIPTION='Status: Cancelled Closed Completed Planned Released',$
  FIELD=ACT_OBJVERSION,  USAGE=A14,  MISSING=ON, TITLE='Objversion',DESCRIPTION='Objversion',$
  FIELD=ACT_SHORT_NAME,  USAGE=A50,  MISSING=ON, TITLE='Short,Name',DESCRIPTION='Short Name', $
  FIELD=ACT_ACTIVITY_NO,  USAGE=A10,  MISSING=ON, TITLE='Activity,ID',DESCRIPTION='Activity ID', $
  FIELD=SPR_SUB_PROJECT_ID,  USAGE=A10,  MISSING=ON, TITLE='Sub,project,id',DESCRIPTION='Sub project id', $
  FIELD=SPR_SHT_DESCRIPTION,  USAGE=A50,  MISSING=ON, TITLE='Sub,Project,Description',DESCRIPTION='Sub Project Description', $
  FIELD=ACT_CR_NO, ALIAS=ECO_REQUEST_NOP, USAGE=P5, MISSING=ON, TITLE='Activity,CR,No', DESCRIPTION='Activity Change Request Number', $
  FIELD=ACT_CR_STATE, USAGE=A11, MISSING=ON,TITLE='Activity,CR,Status', DESCRIPTION='Activity Change Request Status (Active,Cancelled,Preliminary)', $
  FIELD=ACT_CR_SOURCE, USAGE=A1, MISSING=ON, TITLE='Activity,CR,Source', DESCRIPTION='Activity Change Request Source (A=Direct from Activity,W=Derived from Work Order)', $


$=======================================================================================================
$ Work Order Details
$=======================================================================================================
SEGNAME=WORK_ORDER, SEGTYPE=S1, PARENT=ACTIVITY, $
  FIELD=WOR_WO_NO,  USAGE=P6,  FIELDTYPE=I, MISSING=ON, TITLE='WO,Number',DESCRIPTION='WO Number', $
  FIELD=WOR_STATUS,  USAGE=A20, MISSING=ON, TITLE='WO,Status',DESCRIPTION='Status (CANCELED,FAULTREPORT,FINISHED,OBSERVED,PREPARED,RELEASED,REPORTED,STARTED,UNDERPREPARATION,WORKDONE,WORKREQUEST)',
  FIELD=WOR_WORK_TYPE_ID,  USAGE=A20,  MISSING=ON, TITLE='WO,Work,Type',DESCRIPTION='Work Type', $
  FIELD=WOR_ERR_DESCR,  USAGE=A60,  MISSING=ON, TITLE='WO,Description',DESCRIPTION='WO Description', $
  FIELD=WOR_CALL_CODE, USAGE=A10, MISSING=ON, TITLE='Event,ID', DESCRIPTION='Event ID', $
$ Estimates are held at work order level - these will be slightly higher than the Planned figures in ACTIVITY_DETAIL.
  FIELD=WOP_HOURS_ESTIMATED, USAGE=P12.2C, MISSING=ON, TITLE='Estimated,Labour,Hours', DESCRIPTION='Estimated Labour Hours Cost held down to WO Level', $
  FIELD=WRO_NAVY_HOURS_ESTIMATED, USAGE=P12.2C, MISSING=ON, TITLE='Estimated,Navy,Labour,Hours', DESCRIPTION='Estimated Labour Hours for Naval FMG% Workcodes held down to WO Level', $
  FIELD=WOP_WORK_ESTIMATED, USAGE=P12.2C, MISSING=ON, TITLE='Estimated,Labour,Cost', DESCRIPTION='Estimated Cost held down to WO Level', $
  FIELD=WRO_NAVY_WORK_ESTIMATED, USAGE=P12.2C, MISSING=ON, TITLE='Estimated,Navy,Labour,Cost', DESCRIPTION='Estimated Hours for Naval FMG% Workcodes held down to WO Level', $
  FIELD=WOP_MISC_ESTIMATED, USAGE=P12.2C, MISSING=ON, TITLE='Estimated,Purchase,Cost', DESCRIPTION='Estimated Cost of directly Purchased items held down to WO Level', $
  FIELD=WOP_MATERIAL_ESTIMATED, USAGE=P12.2C, MISSING=ON, TITLE='Estimated,Inventory,Cost', DESCRIPTION='Estimated Cost of Inventory Materials held down to WO Level', $
$ Sum up the actuals safer than letting the user do this and exclude some date because of lower segment selections.
  FIELD=WOR_HOURS_ACTUAL, USAGE=P12.2C, MISSING=ON, TITLE='Actual,Labour,Hours', DESCRIPTION='Actual Labour Hours Cost held down to WO Level', $
$  FIELD=WOR_NAVY_HOURS_ACTUAL, USAGE=P12.2C, MISSING=ON, TITLE='Actual,Navy,Labour,Hours', DESCRIPTION='Actual Labour Hours for Naval FMG% Workcodes held down to WO Level', $
  FIELD=WOR_WORK_ACTUAL, USAGE=P12.2C, MISSING=ON, TITLE='Actual,Labour,Cost', DESCRIPTION='Actual Cost held down to WO Level', $
$  FIELD=WOR_NAVY_WORK_ACTUAL, USAGE=P12.2C, MISSING=ON, TITLE='Actual,Navy,Labour,Cost', DESCRIPTION='Actual Hours for Naval FMG% Workcodes held down to WO Level', $
  FIELD=WOR_MISC_ACTUAL, USAGE=P12.2C, MISSING=ON, TITLE='Actual,Purchase,Cost', DESCRIPTION='Actual Cost of directly Purchased items held down to WO Level', $
  FIELD=WOR_MATERIAL_ACTUAL, USAGE=P12.2C, MISSING=ON, TITLE='Actual,Inventory,Cost', DESCRIPTION='Actual Cost of Inventory Materials held down to WO Level', $
  FIELD=WOR_P3_ACTUAL, USAGE=P12.2C, MISSING=ON, TITLE='Actual,P3,Cost', DESCRIPTION='Actual Cost of P3 Cards held down to WO Level', $
  FIELD=WOR_EXPENSES_ACTUAL, USAGE=P12.2C, MISSING=ON, TITLE='Actual,Expenses,Cost', DESCRIPTION='Actual Cost of Expenses held down to WO Level', $
  FIELD=WOR_CR_NO, USAGE=P5, MISSING=ON, TITLE='WO,CR,No', DESCRIPTION='WO Change Request Number', $
  FIELD=WOR_CR_STATE, USAGE=A11, MISSING=ON,TITLE='WO,CR,Status', DESCRIPTION='WO Change Request Status (Active,Cancelled,Preliminary)', $
DEFINE WOR_NON_LABOUR_ESTIMATED/P12.2C  MISSING ON = WOP_MISC_ESTIMATED + WOP_MATERIAL_ESTIMATED ;, TITLE='Estimated,Non,Labour,Cost', DESCRIPTION='Estimated non Labour Cost held down to WO Level', $
DEFINE WOR_NON_LABOUR_ACTUAL/P12.2C  MISSING ON = WOR_MISC_ACTUAL + WOR_MATERIAL_ACTUAL + WOR_P3_ACTUAL + WOR_EXPENSES_ACTUAL ;, TITLE='Actual,Non,Labour,Cost', DESCRIPTION='Actual non Labour Cost held down to WO Level', $

$ Definitions for FTE
DEFINE WOR_MAINT_PERIOD/I2  = EDIT(GETTOK(WOR_CALL_CODE,20,2,'_',2,'A2'));,TITLE='Maintenance,Period', DESCRIPTION='Maintenance Period', $
$
DEFINE WOR_WORK_TYPE_GRP/A20    = IF WOR_WORK_TYPE_ID EQ 'MAIN' OR 'MAINT' OR 'DEFECT' THEN 'MAIN' ELSE
                                  IF WOR_WORK_TYPE_ID EQ 'EMERGENT - CHG' OR 'EXTRA' OR 'ADDITIONAL' OR 'VO' THEN 'VO' ELSE WOR_WORK_TYPE_ID;,TITLE='Work,Type,Group',DESCRIPTION='Work Type Group',$
DEFINE WOR_WORK_TYPE_SEQ/I2     = DECODE WOR_WORK_TYPE_GRP('MAIN' 1 'MISSED' 2 'REWORK' 3 'VO' 4 ELSE 99);,TITLE='Work,Type,Seq',DESCRIPTION='Work Type Seq',$
DEFINE WRO_FSL_WORK_ESTIMATED/P12.2C  MISSING ON = WOP_WORK_ESTIMATED  - WRO_NAVY_WORK_ESTIMATED;, TITLE='Estimated,FSL,Labour,Cost', DESCRIPTION='Estimated FSL Labour Cost',$
DEFINE WRO_FSL_HOURS_ESTIMATED/P12.2C MISSING ON = WOP_HOURS_ESTIMATED - WRO_NAVY_HOURS_ESTIMATED;, TITLE='Estimated,FSL,Labour,Hours', DESCRIPTION='Estimated FSL Labour Hours',$


$=======================================================================================================
$ Employee Cost = Expenses and P3 - Vouchers included on segment
$ (LEFT_OUTER added so that all work order estimates are included in the report)
$=======================================================================================================
SEGNAME=EMPLOYEE_COST, SEGTYPE=S2, PARENT=WORK_ORDER,CRJOINTYPE=LEFT_OUTER, $
  FIELDNAME=EMC_FLAG, USAGE=A1, MISSING=OFF, TITLE='Labour,Expense,Or P3',DESCRIPTION='Flag: L=Labour X=Expense 3=P3 Expenditure', $
  FIELDNAME=EMC_KEY, USAGE=P12L, MISSING=OFF, TITLE='WOC,or,PRT,Key',DESCRIPTION='WOC Key or PRT Key', $
  FIELDNAME=EMC_EMP_NO, ALIAS=CPA_EMP_NO, FORMAT=A11, MISSING=ON, TITLE='Emp,No',DESCRIPTION='Emp No', $
  FIELDNAME=EMC_EXPENSE_ID,  FORMAT=P6L, MISSING=ON, TITLE='Expense,Id',DESCRIPTION='Expense Id', $
$ There does not seem to be an easy way to derive EXD_SEQ_NO from WOC and PRT - certainly the count of items does not match yet ususally the total cost does.
$ With P3 the Id and the Line are contained in the comments - could the grouping be to do with expense time - no time to investigate.
  FIELDNAME=EMC_EXPENSE_LINE_NO,  FORMAT=P4, MISSING=ON, TITLE='Expense,Line,No',DESCRIPTION='Expense Line No', $
  FIELDNAME=EMC_DT, FORMAT=DMYY, MISSING=ON, TITLE='Employee,Cost,Date',DESCRIPTION='Employee Cost Date', $
  FIELDNAME=EMC_HOURS, USAGE=P12.2C,  MISSING=ON, TITLE='Labour,Hours',DESCRIPTION='Labour,Hours', $
  FIELDNAME=EMC_ITEMS, USAGE=P12.2C,  MISSING=ON, TITLE='Expense,Item,Count',DESCRIPTION='Number of Items in Expenses', $
  FIELDNAME=EMC_COST, USAGE=P12.2C,  MISSING=ON, TITLE='Employee,Cost',DESCRIPTION='Cost of Employee', $
  FIELDNAME=EMC_ORG_CODE, USAGE=A10, MISSING=ON, TITLE='Employee,Dept,Code',DESCRIPTION='Employee Dept Rate (Code B)', $
  FIELDNAME=EMC_ROLE_CODE, USAGE=A10,  MISSING=ON, TITLE='Employee,Role',DESCRIPTION='Employee Role Code', $
  FIELDNAME=EMC_VOUCHER_TYPE, USAGE=A3,  MISSING=ON, TITLE='Voucher,Type',DESCRIPTION='Voucher Type', $
  FIELDNAME=EMC_VOUCHER_NO, USAGE=P11,  MISSING=ON, TITLE='Voucher,Number',DESCRIPTION='Voucher Number', $
  FIELDNAME=EMC_ACCOUNT, USAGE=A10,  MISSING=ON, TITLE='Account',DESCRIPTION='Account (Code A)', $
  FIELDNAME=EMC_VOUCHER_CREATION_DATE, USAGE=DMYY,  MISSING=ON, TITLE='Voucher,Creation,Date',DESCRIPTION='Voucher Creation Date', $
  FIELDNAME=EMC_VOUCHER_APPROVAL_DATE, USAGE=DMYY,  MISSING=ON, TITLE='Voucher,Approval,Date',DESCRIPTION='Voucher Approval Date', $
  FIELDNAME=EMC_ACCOUNTING_YEAR, USAGE=P4,  MISSING=ON, TITLE='Accounting,Year',DESCRIPTION='Accounting Year', $
  FIELDNAME=EMC_ACCOUNTING_PERIOD, USAGE=P2L,  MISSING=ON, TITLE='Accounting,Period',DESCRIPTION='Accounting Period', $
  FIELDNAME=EMC_DESCRIPTION, USAGE=A50,  MISSING=ON, TITLE='Employee,Cost,Description',DESCRIPTION='Employee Cost Description', $
$
DEFINE EMC_LABOUR_COST/P12.2C   MISSING ON = IF EMC_FLAG EQ 'L'  THEN EMC_COST ELSE MISSING ;, TITLE='Labour,Cost', DESCRIPTION='Labour Cost',$
DEFINE EMC_NAVY_LABOUR_COST/P12.2C   MISSING ON = IF EMC_ORG_CODE EQ '497' OR '498' OR '499' THEN EMC_LABOUR_COST ELSE MISSING ;, TITLE='Navy,Labour,Cost', DESCRIPTION='Navy Labour Cost',$
DEFINE EMC_NAVY_HOURS/P12.2C         MISSING ON = IF EMC_ORG_CODE EQ '497' OR '498' OR '499' THEN EMC_HOURS       ELSE MISSING ;, TITLE='Navy,Labour,Hours', DESCRIPTION='Navy Labour Hours',$
DEFINE EMC_FSL_LABOUR_COST/P12.2C    MISSING ON = IF EMC_ORG_CODE NE '497' OR '498' OR '499' THEN EMC_LABOUR_COST ELSE MISSING ;, TITLE='FSL,Labour,Cost', DESCRIPTION='FSL Labour Cost',$
DEFINE EMC_FSL_HOURS/P12.2C          MISSING ON = IF EMC_ORG_CODE NE '497' OR '498' OR '499' THEN EMC_HOURS       ELSE MISSING ;, TITLE='FSL,Labour,Hours', DESCRIPTION='FSL Labour Hours',$
$ Definitions for FTE (if no maintenance period as in FINANCE then spend defaults to UNPROG)
DEFINE EMC_PROG_LABOUR_COST/P12.2C MISSING ON = IF WOR_MAINT_PERIOD NE 0 OR 1 THEN EMC_LABOUR_COST ELSE MISSING ;, TITLE='Programmed,Labour,Cost', DESCRIPTION='Programmed Labour Cost _2 _3 etc',$
DEFINE EMC_UNPROG_LABOUR_COST/P12.2C MISSING ON = IF WOR_MAINT_PERIOD EQ 0 OR 1 THEN EMC_LABOUR_COST ELSE MISSING ;, TITLE='Unprogrammed,Labour,Cost', DESCRIPTION='Unprogrammed Labour Cost _1 only',$
DEFINE EMC_UNPROG_OPDEF_LABOUR_COST/P12.2C  MISSING ON = IF WOR_WORK_TYPE_ID LIKE 'OPDEF%' THEN EMC_UNPROG_LABOUR_COST ELSE MISSING ;, TITLE='Unprogrammed,Opdef,Labour,Cost', DESCRIPTION='Unprogrammed Work type starts OPDEF',$
DEFINE EMC_UNPROG_FLAGO_LABOUR_COST/P12.2C  MISSING ON = IF WOR_WORK_TYPE_ID LIKE 'FLAGO%' THEN EMC_UNPROG_LABOUR_COST ELSE MISSING ;, TITLE='Unprogrammed,Flago,Labour,Cost', DESCRIPTION='Unprogrammed Work type starts FLAGO',$
DEFINE EMC_UNPROG_MAINT_LABOUR_COST/P12.2C  MISSING ON = EMC_UNPROG_LABOUR_COST - EMC_UNPROG_OPDEF_LABOUR_COST - EMC_UNPROG_FLAGO_LABOUR_COST ;, TITLE='Unprogrammed,Maint,Labour,Cost', DESCRIPTION='Unprogrammed Maint not OPDEF or FLAGO',$
DEFINE EMC_FTE_TOTAL_LABOUR_COST/P12.2C MISSING ON = EMC_PROG_LABOUR_COST + EMC_UNPROG_LABOUR_COST ;, TITLE='Total,Labour,Cost', DESCRIPTION='Prog and Unprog Maintenance Labour Cost',$
$
DEFINE EMC_EXPENSES_COST/P12.2C   MISSING ON = IF EMC_FLAG EQ 'X'  THEN EMC_COST ELSE MISSING ;, TITLE='Expenses,Cost', DESCRIPTION='Expenses Cost',$
$ Definitions for FTE (if no maintenance period as in FINANCE then spend defaults to UNPROG)
DEFINE EMC_PROG_EXPENSES_COST/P12.2C MISSING ON = IF WOR_MAINT_PERIOD NE 0 OR 1 THEN EMC_EXPENSES_COST ELSE MISSING ;, TITLE='Programmed,Expenses,Cost', DESCRIPTION='Programmed Expenses Cost _2 _3 etc',$
DEFINE EMC_UNPROG_EXPENSES_COST/P12.2C MISSING ON = IF WOR_MAINT_PERIOD EQ 0 OR 1 THEN EMC_EXPENSES_COST ELSE MISSING ;, TITLE='Unprogrammed,Expenses,Cost', DESCRIPTION='Unprogrammed Expenses Cost _1 only',$
DEFINE EMC_UNPROG_OPDEF_EXPENSES_COST/P12.2C  MISSING ON = IF WOR_WORK_TYPE_ID LIKE 'OPDEF%' THEN EMC_UNPROG_EXPENSES_COST ELSE MISSING ;, TITLE='Unprogrammed,Opdef,Expenses,Cost', DESCRIPTION='Unprogrammed Work type starts OPDEF',$
DEFINE EMC_UNPROG_FLAGO_EXPENSES_COST/P12.2C  MISSING ON = IF WOR_WORK_TYPE_ID LIKE 'FLAGO%' THEN EMC_UNPROG_EXPENSES_COST ELSE MISSING ;, TITLE='Unprogrammed,Flago,Expenses,Cost', DESCRIPTION='Unprogrammed Work type starts FLAGO',$
DEFINE EMC_UNPROG_MAINT_EXPENSES_COST/P12.2C  MISSING ON = EMC_UNPROG_EXPENSES_COST - EMC_UNPROG_OPDEF_EXPENSES_COST - EMC_UNPROG_FLAGO_EXPENSES_COST ;, TITLE='Unprogrammed,Maint,Expenses,Cost', DESCRIPTION='Unprogrammed Maint not OPDEF or FLAGO',$
DEFINE EMC_FTE_TOTAL_EXPENSES_COST/P12.2C MISSING ON = EMC_PROG_EXPENSES_COST + EMC_UNPROG_EXPENSES_COST ;, TITLE='Total,Expenses,Cost', DESCRIPTION='Prog and Unprog Maintenance Expenses Cost',$
$
DEFINE EMC_P3_COST/P12.2C   MISSING ON = IF EMC_FLAG EQ '3' THEN EMC_COST ELSE MISSING ;, TITLE='P3,Cost', DESCRIPTION='P3 Cost',$
$ Definitions for FTE (if no maintenance period as in FINANCE then spend defaults to UNPROG)
DEFINE EMC_PROG_P3_COST/P12.2C MISSING ON = IF WOR_MAINT_PERIOD NE 0 OR 1 THEN EMC_P3_COST ELSE MISSING ;, TITLE='Programmed,P3,Cost', DESCRIPTION='Programmed P3 Cost _2 _3 etc',$
DEFINE EMC_UNPROG_P3_COST/P12.2C MISSING ON = IF WOR_MAINT_PERIOD EQ 0 OR 1 THEN EMC_P3_COST ELSE MISSING ;, TITLE='Unprogrammed,P3,Cost', DESCRIPTION='Unprogrammed P3 Cost _1 only',$
DEFINE EMC_UNPROG_OPDEF_P3_COST/P12.2C  MISSING ON = IF WOR_WORK_TYPE_ID LIKE 'OPDEF%' THEN EMC_UNPROG_P3_COST ELSE MISSING ;, TITLE='Unprogrammed,Opdef,P3,Cost', DESCRIPTION='Unprogrammed Work type starts OPDEF',$
DEFINE EMC_UNPROG_FLAGO_P3_COST/P12.2C  MISSING ON = IF WOR_WORK_TYPE_ID LIKE 'FLAGO%' THEN EMC_UNPROG_P3_COST ELSE MISSING ;, TITLE='Unprogrammed,Flago,P3,Cost', DESCRIPTION='Unprogrammed Work type starts FLAGO',$
DEFINE EMC_UNPROG_MAINT_P3_COST/P12.2C  MISSING ON = EMC_UNPROG_P3_COST - EMC_UNPROG_OPDEF_P3_COST - EMC_UNPROG_FLAGO_P3_COST ;, TITLE='Unprogrammed,Maint,P3,Cost', DESCRIPTION='Unprogrammed Maint not OPDEF or FLAGO',$
DEFINE EMC_FTE_TOTAL_P3_COST/P12.2C MISSING ON = EMC_PROG_P3_COST + EMC_UNPROG_P3_COST ;, TITLE='Total,P3,Cost', DESCRIPTION='Prog and Unprog Maintenance P3 Cost',$


$=======================================================================================================
$ Purchase Lines - Requisition and Order combined
$=======================================================================================================
SEGNAME=PURCHASED_ITEM, SEGTYPE=S6, PARENT=WORK_ORDER, CRJOINTYPE=LEFT_OUTER, $
  FIELD=PRL_REQUISITION_NOP,  USAGE=P6,  MISSING=ON, TITLE='Requisition,No',DESCRIPTION='Requisition No', $
  FIELD=PRL_REQ_LINE_NOP,  USAGE=P4,  MISSING=ON, TITLE='PR,Line,No',DESCRIPTION='PR Line No', $
  FIELD=PRL_REQ_RELEASE_NOP,  USAGE=P4,  MISSING=ON, TITLE='PR,Release,No',DESCRIPTION='PR Release No', $
  FIELD=POL_ORDER_NOP,  USAGE=P6,  MISSING=ON, TITLE='PO,Order,No',DESCRIPTION='PO Order No', $
  FIELD=POL_LINE_NOP,  USAGE=P4,  MISSING=ON, TITLE='PO,Line,No',DESCRIPTION='PO Line No', $
  FIELD=POL_RELEASE_NOP,  USAGE=P4,  MISSING=ON, TITLE='PO,Release,No',DESCRIPTION='PO Release No', $
$-------------------------------------------------------------------------------------------------------
$ PRL
$-------------------------------------------------------------------------------------------------------
  FIELD=PRL_KEY, USAGE=P14, MISSING=ON, TITLE='Requisition,Key', DESCRIPTION='Requisition Key', FIELDTYPE=I,$
  FIELD=PRL_PRE,  USAGE=A3,  MISSING=ON, TITLE='PR,Prefix',DESCRIPTION='PR Prefix',$
  FIELD=PRL_STATE,  USAGE=A20,  MISSING=ON, TITLE='PR,State',DESCRIPTION='PR State',$
  FIELD=PRL_OBJVERSION,  USAGE=A14,  MISSING=ON, TITLE='PR,Timestamp',DESCRIPTION='PR Timestamp', $
  FIELD=PRL_SHT_DESCRIPTION,  USAGE=A50,  MISSING=ON, TITLE='PR,Short,Description',DESCRIPTION='PR Short Description', $
  FIELD=PRL_SHT_NOTE_TEXT,  USAGE=A50,  MISSING=ON, TITLE='PR,Short,Note,Text',DESCRIPTION='PR Short Note Text', $
  FIELD=PRL_DEMAND_CODE, USAGE=A20,  MISSING=ON, TITLE='PR,Type',DESCRIPTION='PR Type', $
  FIELD=PRL_VENDOR_NO,  USAGE=A10,  MISSING=ON, TITLE='PR,Supplier',DESCRIPTION='PR Supplier', $
  FIELD=PRL_PART_NO,  USAGE=A25,  MISSING=ON, TITLE='PR,Part,No',DESCRIPTION='PR Part No', $
  FIELD=PRL_LATEST_ORDER_DATE,  USAGE=DMYY, MISSING=ON, TITLE='PR,Latest,Order,Date',DESCRIPTION='PR Latest Order Date', $
  FIELD=PRL_WANTED_DELIVERY_DATE,  USAGE=DMYY, MISSING=ON, TITLE='PR,Wanted,Delivery,Date',DESCRIPTION='PR Wanted Delivery Date', $
  FIELD=PRL_WANTED_RECEIPT_DATE,  USAGE=DMYY, MISSING=ON, TITLE='PR,Wanted,Receipt,Date',DESCRIPTION='PR Wanted Receipt Date', $
  FIELD=PRL_PRE_ACCOUNTING_ID,  USAGE=P7L,  MISSING=ON, TITLE='PR,Pre,Accounting,Id',DESCRIPTION='PR Pre Accounting Id', $
  FIELD=PRL_REQUISITIONER_CODE,  USAGE=A20,  MISSING=ON, TITLE='PR,Requisitioner,Code',DESCRIPTION='PR Requisitioner Code', $
  FIELD=PRL_BUYER_CODE,  USAGE=A20,  MISSING=ON, TITLE='PR,Buyer,Code',DESCRIPTION='PR Buyer Code', $
  FIELD=PRL_ORIGINAL_QTY,  USAGE=P12.4C,  MISSING=ON, TITLE='PR,Original,Qty',DESCRIPTION='PR Original Qty', $
  FIELD=PRL_BUY_UNIT_PRICE,  USAGE=P12.2C,  MISSING=ON, TITLE='PR,Buy,Unit,Price',DESCRIPTION='PR Buy Unit Price', $
  FIELD=PRL_FBUY_UNIT_PRICE,  USAGE=P12.2C,  MISSING=ON, TITLE='PR,Fbuy,Unit,Price',DESCRIPTION='PR Fbuy Unit Price', $
  FIELD=PRL_BUY_UNIT_MEAS,  USAGE=A10,  MISSING=ON, TITLE='PR,Buy,Unit,Meas',DESCRIPTION='PR Buy Unit Meas', $
  FIELD=PRL_DISCOUNT,  USAGE=P12.2C,  MISSING=ON, TITLE='PR,Discount',DESCRIPTION='PR Discount', $
  FIELD=PRL_ADDITIONAL_COST_AMOUNT,  USAGE=P12.2C,  MISSING=ON, TITLE='PR,Additional,Cost,Amount',DESCRIPTION='PR Additional Cost Amount', $
  FIELD=PRL_STAT_GRP,  USAGE=A6,  MISSING=ON, TITLE='PR,Purchase,Group',DESCRIPTION='PR Purchase Group', $
  FIELD=PRL_MAXIMO_WONUM,  USAGE=A10,  MISSING=ON, TITLE='PR,Maximo,Work,Order,Number',DESCRIPTION='PR,Maximo,Work,Order,Number', $
  FIELD=PRL_BUY_TOTAL_COST,  USAGE=P12.2C,  MISSING=ON, TITLE='PR,Total,Line,Cost',DESCRIPTION='PR Total Line Cost', $
  FIELD=PRL_MAXIMO_CAT,  USAGE=A1,  MISSING=ON, TITLE='PR,Maximo,Service,or,Materials',DESCRIPTION='PR,Maximo,Service,or,Materials', $

$-------------------------------------------------------------------------------------------------------
$ POL
$-------------------------------------------------------------------------------------------------------
  FIELD=POL_KEY, USAGE=P14, MISSING=ON, TITLE='Order,Line,Key', DESCRIPTION='Order Line Key', FIELDTYPE=I, $
  FIELD=POL_PRE,  USAGE=A3,  MISSING=ON, TITLE='PO,Prefix',DESCRIPTION='PO Prefix',$
  FIELD=POL_STATE,  USAGE=A9,  MISSING=ON, TITLE='PO,State',DESCRIPTION='PO State',$
  FIELD=POL_OBJVERSION,  USAGE=A14,  MISSING=ON, TITLE='PO,Timestamp',DESCRIPTION='PO Timestamp',$
  FIELD=POL_DEMAND_CODE,  USAGE=A20,  MISSING=ON, TITLE='PO,Type',DESCRIPTION='PO Type', $
  FIELD=POL_SHT_DESCRIPTION,  USAGE=A50,  MISSING=ON, TITLE='PO,Short,Description',DESCRIPTION='PO Short Description', $
  FIELD=POL_SHT_NOTE_TEXT,  USAGE=A50,  MISSING=ON, TITLE='PO,Short,Note,Text',DESCRIPTION='PO Short Note Text', $
  FIELD=POL_VENDOR_NO, ALIAS=SUP_VENDOR_NO, USAGE=A10,  MISSING=ON, TITLE='PO,Vendor,No',DESCRIPTION='PO Vendor No', $
  FIELD=POL_PART_NO,  USAGE=A25,  MISSING=ON, TITLE='PO,Part,No',DESCRIPTION='PO Part No', $
  FIELD=POL_REQUISITIONER_CODE,  USAGE=A20,  MISSING=ON, TITLE='PO,Requisitioner,Code',DESCRIPTION='PO Requisitioner Code', $
  FIELD=POL_DATE_ENTERED,  USAGE=DMYY, MISSING=ON, TITLE='PO,Date,Entered',DESCRIPTION='PO Date Entered', $
  FIELD=POL_LAST_ACTIVITY_DATE,  USAGE=DMYY, MISSING=ON, TITLE='PO,Last,Activity,Date',DESCRIPTION='PO Last Activity Date', $
  FIELD=POL_PLANNED_DELIVERY_DATE,  USAGE=DMYY, MISSING=ON, TITLE='PO,Planned,Delivery,Date',DESCRIPTION='PO Planned Delivery Date', $
  FIELD=POL_PLANNED_RECEIPT_DATE,  USAGE=DMYY, MISSING=ON, TITLE='PO,Planned,Receipt,Date',DESCRIPTION='PO Planned Receipt Date', $
  FIELD=POL_PROMISED_DELIVERY_DATE,  USAGE=DMYY, MISSING=ON, TITLE='PO,Promised,Delivery,Date',DESCRIPTION='PO Promised Delivery Date', $
  FIELD=POL_WANTED_DELIVERY_DATE,  USAGE=DMYY, MISSING=ON, TITLE='PO,Wanted,Delivery,Date',DESCRIPTION='PO Wanted Delivery Date', $
  FIELD=POL_PROJECT_ID,  USAGE=A10,  MISSING=ON, TITLE='PO,Project,Id',DESCRIPTION='PO Project Id', $
  FIELD=POL_ACTIVITY_SEQ,  USAGE=P9,  MISSING=ON, TITLE='PO,Activity,Seq',DESCRIPTION='PO Activity Seq', $
  FIELD=POL_WO_NO,  USAGE=P6,  MISSING=ON, TITLE='PO,Work,Order',DESCRIPTION='PO Work Order', $
  FIELD=POL_PRE_ACCOUNTING_ID,  USAGE=P7L,  MISSING=ON, TITLE='PO,Pre,Accounting,Id',DESCRIPTION='PO Pre Accounting Id', $
  FIELD=POL_BUYER_CODE,  USAGE=A20,  MISSING=ON, TITLE='PO,Buyer,Code',DESCRIPTION='PO Buyer Code',$
  FIELD=POL_BUY_QTY_DUE,  USAGE=P12.4C,  MISSING=ON, TITLE='PO,Buy,Qty,Due',DESCRIPTION='PO Buy Qty Due', $
  FIELD=POL_BUY_UNIT_PRICE,  USAGE=P12.2C,  MISSING=ON, TITLE='PO,Buy,Unit,Price',DESCRIPTION='PO Buy Unit Price', $
  FIELD=POL_BUY_UNIT_MEAS,  USAGE=A10,  MISSING=ON, TITLE='PO,Buy,Unit,Meas',DESCRIPTION='PO Buy Unit Meas', $
  FIELD=POL_DISCOUNT,  USAGE=P12.2C,  MISSING=ON, TITLE='PO,Discount',DESCRIPTION='PO Discount', $
  FIELD=POL_ADDITIONAL_COST_AMOUNT,  USAGE=P12.2C,  MISSING=ON, TITLE='PO,Additional,Cost,Amount',DESCRIPTION='PO Additional Cost Amount', $
  FIELD=POL_STAT_GRP,  USAGE=A4,  MISSING=ON, TITLE='PO,Purchase,Group',DESCRIPTION='PO Purchase Group', $
  FIELD=POL_MAXIMO_WONUM,  USAGE=A10,  MISSING=ON, TITLE='PO,Maximo,Work,Order,Number',DESCRIPTION='PO,Maximo,Work,Order,Number', $
  FIELD=POL_BUY_TOTAL_COST,  USAGE=P12.2C,  MISSING=ON, TITLE='PO,Total,Line,Cost',DESCRIPTION='PO Total Line Cost', $
  FIELD=POL_MAXIMO_CAT,  USAGE=A1,  MISSING=ON, TITLE='PO,Maximo,Service,or,Materials',DESCRIPTION='PO,Maximo,Service,or,Materials', $
DEFINE POL_UNCANCEL_BUY_TOTAL_COST/P12.2C MISSING ON = IF POL_STATE NE 'Cancelled'  THEN POL_BUY_TOTAL_COST ELSE MISSING ; ,  TITLE='PO,Uncancelled,Total,Line,Cost',DESCRIPTION='PO,Uncancelled,Total,Line,Cost', $

$=======================================================================================================
$ Purchase Receipt - Receipt and Invoice combined
$=======================================================================================================
SEGNAME=PURCHASED_ITEM_RECEIPT, SEGTYPE=S1, PARENT=PURCHASED_ITEM, $
$-------------------------------------------------------------------------------------------------------
$ PRN
$-------------------------------------------------------------------------------------------------------
  FIELD=PRN_RECEIPT_NOP,  USAGE=P4,  MISSING=ON, TITLE='Receipt,No',DESCRIPTION='Receipt No', $

  FIELD=PRN_KEY, USAGE=P18, MISSING=ON, TITLE='PO,Receipt,Key', DESCRIPTION='PO Receipt Key', FIELDTYPE=I,$
  FIELD=PRN_PRE,  USAGE=A3,  MISSING=ON, TITLE='Receipt,Prefix',DESCRIPTION='Receipt Prefix',$
  FIELD=PRN_STATE,  USAGE=A20,  MISSING=ON, TITLE='Receipt,State',DESCRIPTION='Receipt State',$
  FIELD=PRN_OBJVERSION,  USAGE=A14,  MISSING=ON,  TITLE='Receipt,Timestamp',DESCRIPTION='Receipt Timestamp',$
  FIELD=PRN_RECEIPT_REFERENCE,  USAGE=A10,  MISSING=ON, TITLE='Receipt,Reference',DESCRIPTION='Receipt Reference', $
  FIELD=PRN_SHT_NOTE_TEXT,  USAGE=A50,  MISSING=ON, TITLE='Receipt,Short,Note,Text',DESCRIPTION='Receipt Short Note Text', $
  FIELD=PRN_NOTE_TEXT,  USAGE=A200,  MISSING=ON, TITLE='Receipt,Note,Text',DESCRIPTION='Receipt Note Text', $
  FIELD=PRN_ARRIVAL_DATE,  USAGE=DMYY, MISSING=ON, TITLE='Receipt,Arrival,Date',DESCRIPTION='Receipt Arrival Date', $
  FIELD=PRN_RECEIVER,  USAGE=A30,  MISSING=ON, TITLE='Receiver',DESCRIPTION='Receiver', $
  FIELD=PRN_QTY_ARRIVED,  USAGE=P12.4C,  MISSING=ON, TITLE='Receipt,Qty,Arrived',DESCRIPTION='Receipt Qty Arrived', $
  FIELD=PRN_QTY_INVOICED,  USAGE=P12.4C,  MISSING=ON, TITLE='Receipt,Qty,Invoiced',DESCRIPTION='Receipt Qty Invoiced', $
  FIELD=PRN_QTY_CONSIGNMENT,  USAGE=P12.4C,  MISSING=ON, TITLE='Receipt,Qty,Consignment',DESCRIPTION='Receipt Qty Consignment', $
DEFINE PRN_BUY_TOTAL_COST/P12.2C  MISSING ON = PRN_QTY_ARRIVED * POL_BUY_TOTAL_COST / POL_BUY_QTY_DUE;, TITLE='Receipt,Total,Line,Cost',DESCRIPTION='Line Cost Amount', $
$-------------------------------------------------------------------------------------------------------
$ POI
$-------------------------------------------------------------------------------------------------------
  FIELD=POI_PRE,  USAGE=A3,  MISSING=ON, TITLE='Inv,Prefix',DESCRIPTION='Inv Prefix',$
  FIELD=POI_OBJVERSION,  USAGE=A14,  MISSING=ON, TITLE='Inv,Object,Version',DESCRIPTION='Inv Object Version', $
  FIELD=POI_DATE_ENTERED,  USAGE=DMYY, MISSING=ON, TITLE='Inv,Date,Entered',DESCRIPTION='Inv Date Entered', $
  FIELD=POI_MATCHING_DATE,  USAGE=DMYY, MISSING=ON, TITLE='Inv,Matching,Date',DESCRIPTION='Inv Matching Date', $
  FIELD=POI_MATCHED_BY_USER,  USAGE=A30,  MISSING=ON, TITLE='Inv,Matched,By,User',DESCRIPTION='Inv Matched By User', $
  FIELD=POI_QTY_INVOICED,  USAGE=P12.4C,  MISSING=ON, TITLE='Inv,Qty,Invoiced',DESCRIPTION='Inv Qty Invoiced', $
  FIELD=POI_UNIT_PRICE_PAID,  USAGE=P12.2C,  MISSING=ON, TITLE='Inv,Unit,Price,Paid',DESCRIPTION='Inv Unit Price Paid', $
  FIELD=POI_FUNIT_PRICE_PAID,  USAGE=P12.2C,  MISSING=ON, TITLE='Inv,Funit,Price,Paid',DESCRIPTION='Inv Funit Price Paid', $
  FIELD=POI_BUY_UNIT_MEAS,  USAGE=A10,  MISSING=ON, TITLE='Inv,Buy,Unit,Meas',DESCRIPTION='Inv Buy Unit Meas', $
  FIELD=POI_DISCOUNT,  USAGE=P7.2,  MISSING=ON, TITLE='Inv,Discount',DESCRIPTION='Inv Discount', $
  FIELD=POI_ADDITIONAL_COST,  USAGE=P12.2C,  MISSING=ON, TITLE='Inv,Additional,Cost',DESCRIPTION='Inv Additional Cost', $
  FIELD=POI_PRICE_DIFFERENCE,  USAGE=P12.2C,  MISSING=ON, TITLE='Inv,Price,Difference',DESCRIPTION='Inv Price Difference', $
  FIELD=POI_AP_INVOICE_NO,  USAGE=A50,  MISSING=ON, TITLE='Inv,AP,Invoice,No',DESCRIPTION='Inv AP Invoice No', $
  FIELD=POI_PART_NO,  USAGE=A25,  MISSING=ON, TITLE='Inv,Part,No',DESCRIPTION='Inv Part No', $
  FIELD=POI_SERIES_ID,  USAGE=A20,  MISSING=ON, TITLE='Inv,Series,Id',DESCRIPTION='Inv Series Id', $
  FIELD=POI_UNIT_MEAS,  USAGE=A10,  MISSING=ON, TITLE='Inv,Unit,Meas',DESCRIPTION='Inv Unit Meas', $
  FIELD=POI_PRICE_UNIT_MEAS,  USAGE=A10,  MISSING=ON, TITLE='Inv,Price,unit,meas',DESCRIPTION='Inv Price unit meas', $
  FIELD=POI_BUY_TOTAL_COST,  USAGE=P12.2C,  MISSING=ON, TITLE='Inv,Total,Line,Cost',DESCRIPTION='Inv Total Line Cost', $
DEFINE PURCHASE_POSITION_SEQ/A1=IF POI_PRE NE MISSING THEN '4' ELSE
                                IF PRN_PRE NE MISSING THEN '3' ELSE
                         IF POL_PRE NE MISSING THEN '2' ELSE
                  IF PRL_PRE NE MISSING THEN '1' ELSE '0'; , TITLE='Purchase,Position,Sort',DESCRIPTION='Purchase Position Sort', $
DEFINE PURCHASE_POSITION/A20=IF POI_PRE NE MISSING THEN 'Invoiced' ELSE
                             IF PRN_PRE NE MISSING THEN 'Receipted' ELSE
                      IF POL_PRE NE MISSING THEN 'Ordered' ELSE
               IF PRL_PRE NE MISSING THEN 'Requisition' ELSE 'Unknown'; , TITLE='Purchase,Position',DESCRIPTION='Purchase Position', $
DEFINE PURCHASE_CANCELLED/A1=IF PRL_STATE EQ 'Cancelled' OR POL_STATE EQ 'Cancelled' OR PRN_STATE EQ 'Cancelled' THEN 'Y' ELSE 'N';
DEFINE PRL_UNCANCELLED_BUY_TOTAL_COST/P12.2C MISSING ON = IF PURCHASE_CANCELLED EQ 'N' THEN PRL_BUY_TOTAL_COST ELSE MISSING ; ,  TITLE='PR,Uncancelled,Total,Line,Cost',DESCRIPTION='PR,Uncancelled,Total,Line,Cost', $
DEFINE POL_UNCANCELLED_BUY_TOTAL_COST/P12.2C MISSING ON = IF PURCHASE_CANCELLED EQ 'N' THEN POL_BUY_TOTAL_COST ELSE MISSING ; ,  TITLE='PO,Uncancelled,Total,Line,Cost',DESCRIPTION='PO,Uncancelled,Total,Line,Cost', $
DEFINE PRN_UNCANCELLED_BUY_TOTAL_COST/P12.2C MISSING ON = IF PURCHASE_CANCELLED EQ 'N' THEN PRN_BUY_TOTAL_COST ELSE MISSING ; ,  TITLE='Received,Uncancelled,Total,Line,Cost',DESCRIPTION='Received,Uncancelled,Total,Line,Cost', $
DEFINE POI_UNCANCELLED_BUY_TOTAL_COST/P12.2C MISSING ON = IF PURCHASE_CANCELLED EQ 'N' THEN POI_BUY_TOTAL_COST ELSE MISSING ; ,  TITLE='Invoiced,Uncancelled,Total,Line,Cost',DESCRIPTION='Invoiced,Uncancelled,Total,Line,Cost', $
DEFINE PURCHASE_POSITION_COST/P12.2C=IF PURCHASE_POSITION EQ 'Invoiced'    THEN POI_UNCANCELLED_BUY_TOTAL_COST ELSE
                                     IF PURCHASE_POSITION EQ 'Receipted'   THEN PRN_UNCANCELLED_BUY_TOTAL_COST ELSE
                                     IF PURCHASE_POSITION EQ 'Ordered'     THEN POL_UNCANCELLED_BUY_TOTAL_COST ELSE
                                     IF PURCHASE_POSITION EQ 'Requisition' THEN PRL_UNCANCELLED_BUY_TOTAL_COST ELSE 0; ,  TITLE='Purchase,Position,Cost',DESCRIPTION='Purchase Position Cost', $

$=======================================================================================================
$ Purchase Vouchers
$=======================================================================================================

SEGNAME=PURCHASED_ITEM_VOUCHER, SEGTYPE=S2, PARENT=PURCHASED_ITEM_RECEIPT, $
  FIELD=GLR_FLAG            , FORMAT=A1    , MISSING=ON, TITLE='Source,Receipt,or,Invoice',DESCRIPTION='Receipt or InVoice Table R or V',$
  FIELD=GLR_KEY             , FORMAT=P16   , MISSING=ON, TITLE='Voucher,Key',DESCRIPTION='Voucher Key',$
  FIELD=GLR_VOUCHER_NO      , FORMAT=P11   , MISSING=ON, TITLE='Voucher,No',DESCRIPTION='Voucher No',$
  FIELD=GLR_VOUCHER_TYPE    , FORMAT=A3    , MISSING=ON, TITLE='Voucher,Type',DESCRIPTION='Voucher Type', $
  FIELD=GLR_ROW_NO          , FORMAT=P5    , MISSING=ON, TITLE='Voucher,Row',DESCRIPTION='Voucher Row', $
  FIELD=GLR_ACCOUNT         , FORMAT=A10   , MISSING=ON, TITLE='Account',DESCRIPTION='Account', $
  FIELD=GLR_YEAR_PERIOD_KEY , FORMAT=P6    , MISSING=ON, TITLE='Year,period,key',DESCRIPTION='Year period key', $
  FIELD=GLR_AMOUNT          , FORMAT=P12.2C, MISSING=ON, TITLE='Amount',DESCRIPTION='Amount', $
  FIELD=GLR_TRANSACTION     , FORMAT=A10   , MISSING=ON, TITLE='Transaction,Code',DESCRIPTION='Transaction Code', $
  FIELD=GLV_VOUCHER_DATE    , FORMAT=DMYY  , MISSING=ON, TITLE='Voucher,Date',DESCRIPTION='Voucher Date', $
  FIELD=GLV_APPROVAL_DATE   , FORMAT=DMYY  , MISSING=ON, TITLE='Approval,Date',DESCRIPTION='Approval Date', $
$
DEFINE GLR_GRNI_AMOUNT/P12.2C MISSING ON = IF GLR_TRANSACTION EQ 'ARR-NONINV' OR 'M92' THEN GLR_AMOUNT ELSE MISSING ;, TITLE='GRNI,Amount', DESCRIPTION='GRNI Position per Voucher Trans Type O:ARR-NONINV and J:M92',$
DEFINE GLR_INVOICE_AMOUNT/P12.2C MISSING ON = IF GLR_TRANSACTION EQ 'M93' THEN GLR_AMOUNT ELSE MISSING ;, TITLE='Invoiced,Amount', DESCRIPTION='Invoiced Position per Voucher Trans Type J:M93',$
$ Definitions for FTE (if no maintenance period as in FINANCE then spend defaults to UNPROG)
DEFINE GLR_PROG_INVOICE_AMOUNT/P12.2C   MISSING ON = IF WOR_MAINT_PERIOD NE 0 OR 1 THEN GLR_INVOICE_AMOUNT ELSE MISSING ;, TITLE='Programmed,Maintenance,Invoiced,Amount', DESCRIPTION='Programmed Invoiced Amount _2 _3 etc',$
DEFINE GLR_UNPROG_INVOICE_AMOUNT/P12.2C MISSING ON = IF WOR_MAINT_PERIOD EQ 0 OR 1 THEN GLR_INVOICE_AMOUNT ELSE MISSING ;, TITLE='Unprogrammed,Invoiced,Amount', DESCRIPTION='Unprogrammed Invoiced Amount _1 only',$
DEFINE GLR_UNPROG_OPDEF_INVOICE_AMOUNT/P12.2C  MISSING ON = IF WOR_WORK_TYPE_ID LIKE 'OPDEF%' THEN GLR_UNPROG_INVOICE_AMOUNT ELSE MISSING ;, TITLE='Unprogrammed,Opdef,Invoiced,Amount', DESCRIPTION='Unprogrammed Work type starts OPDEF',$
DEFINE GLR_UNPROG_FLAGO_INVOICE_AMOUNT/P12.2C  MISSING ON = IF WOR_WORK_TYPE_ID LIKE 'FLAGO%' THEN GLR_UNPROG_INVOICE_AMOUNT ELSE MISSING ;, TITLE='Unprogrammed,Flago,Invoiced,Amount', DESCRIPTION='Unprogrammed Work type starts FLAGO',$
DEFINE GLR_UNPROG_MAINT_INVOICE_AMOUNT/P12.2C  MISSING ON = GLR_UNPROG_INVOICE_AMOUNT - GLR_UNPROG_OPDEF_INVOICE_AMOUNT - GLR_UNPROG_FLAGO_INVOICE_AMOUNT ;, TITLE='Unprogrammed,Maint,Invoiced,Amount', DESCRIPTION='Unprogrammed Maint not OPDEF or FLAGO',$
DEFINE GLR_FTE_TOTAL_INVOICE_AMOUNT/P12.2C MISSING ON = GLR_PROG_INVOICE_AMOUNT + GLR_UNPROG_INVOICE_AMOUNT ;, TITLE='Total,Invoiced,Amount', DESCRIPTION='Prog and Unprog Maintenance Invoiced Amount',$


$=======================================================================================================
$ Inventory Items
$=======================================================================================================

SEGNAME=INVENTORY_ITEM, SEGTYPE=S2, PARENT=WORK_ORDER,CRJOINTYPE=LEFT_OUTER,  $
$ For the workorder inventory items this is the MAINT_MATERIAL_ORDER_NO which is 1 to 15822
$ For the activity inventory items this is  PMP_MATR_SEQ_NO which always begins in 1 and is 100000004 to 100034995
  FIELD=MMR_MAINT_MATERIAL_ORDER_NO,  FORMAT=P9, MISSING=ON, TITLE='Maint,Material,Order,No',DESCRIPTION='Maint Material Order No', $
$ For the workorder inventory items this is the LINE_ITEM_NO which is 1 to 745
$ For the activity inventory items this is always 1
  FIELD=MME_LINE_ITEM_NO,  FORMAT=P4, MISSING=ON, TITLE='Line,Item,No',DESCRIPTION='Line Item No', $
  FIELD=MMR_STATE,  FORMAT=A8, MISSING=ON, TITLE='MMR,State',DESCRIPTION='MMR State (Closed,Planned,Released) ',$
  FIELD=MMR_SIGNATURE_ID,  FORMAT=A11, MISSING=ON, TITLE='MMR,Signature,Id',DESCRIPTION='MMR Signature Id', $
  FIELD=MMR_DUE_DATE,  FORMAT=DMYY, MISSING=ON, TITLE='MMR,Due,Date',DESCRIPTION='MMR Due Date', $
  FIELD=MMR_ENTERED,  FORMAT=DMYY, MISSING=ON, TITLE='MMR,Entered',DESCRIPTION='MMR Entered', $
  FIELD=MMR_SIGNATURE,  FORMAT=A20, MISSING=ON, TITLE='MMR,Signature',DESCRIPTION='MMR Signature', $
  FIELD=MME_STATE,  FORMAT=A16, MISSING=ON, TITLE='MMRL,State',DESCRIPTION='MMRL State (null,OBSERVED,PREPARED,RELEASED,REPORTED,STARTED,UNDERPREPARATION,WORKDONE,WORKREQUEST)', $
  FIELD=MME_PART_NO,  FORMAT=A25, MISSING=ON, TITLE='MMRL,Part,No',DESCRIPTION='MMRL Part No', $
  FIELD=MME_DATE_REQUIRED,  FORMAT=DMYY, MISSING=ON, TITLE='MMRL,Date,Required',DESCRIPTION='MMRL Date Required', $
  FIELD=MME_COST,  FORMAT=P12.2C, MISSING=ON, TITLE='MMRL,Cost',DESCRIPTION='MMRL Cost', $
  FIELD=MME_LIST_PRICE,  FORMAT=P12.2C, MISSING=ON, TITLE='MMRL,List,Price',DESCRIPTION='MMRL List Price', $
$ PMP uses the price from estimates for the time being since following the Price algorithm is actually quite complex but may be attempted later.
  FIELD=MME_DEMAND_PRICE,  FORMAT=P12.2C, MISSING=ON, TITLE='Demand,Price',DESCRIPTION='Demand Price', $
  FIELD=MME_DEMAND_QTY,  FORMAT=P12.2C, MISSING=ON, TITLE='MMRL,Qty,Demanded',DESCRIPTION='MMRL Qty Demanded', $
  FIELD=MME_DEMAND_COST,  FORMAT=P12.2C, MISSING=ON, TITLE='MMRL,Demand,Cost',DESCRIPTION='MMRL Demand Cost', $
  FIELD=MME_ISSUED_QTY,  FORMAT=P12.2C, MISSING=ON, TITLE='MMRL,Qty,Issued',DESCRIPTION='MMRL Qty Issued', $
  FIELD=MME_ISSUED_COST,  FORMAT=P12.2C, MISSING=ON, TITLE='MMRL,Issued,Cost',DESCRIPTION='MMRL Issued Cost', $
  FIELD=MME_QTY_SHORT,  FORMAT=P12.2C, MISSING=ON, TITLE='MMRL,Qty,Short',DESCRIPTION='MMRL Qty Short', $
  FIELD=MME_QTY_ASSIGNED,  FORMAT=P12.2C, MISSING=ON, TITLE='MMRL,Qty,Assigned',DESCRIPTION='MMRL Qty Assigned', $
  FIELD=MME_QTY_RETURNED,  FORMAT=P12.2C, MISSING=ON, TITLE='MMRL,Qty,Returned',DESCRIPTION='MMRL Qty Returned', $
  FIELD=MME_PLAN_LINE_NO,  FORMAT=P4, MISSING=ON, TITLE='MMRL,Plan,Line,No',DESCRIPTION='MMRL Plan Line No', $
  FIELD=MME_REQUISITION_NOP,  FORMAT=P6, MISSING=ON, TITLE='MMRL,Requisition,No',DESCRIPTION='MMRL Requisition No', $
  FIELD=MME_LINE_NOP,  FORMAT=P4, MISSING=ON, TITLE='MMRL,Line,no',DESCRIPTION='MMRL Line no', $
  FIELD=MME_RELEASE_NOP,  FORMAT=P4, MISSING=ON, TITLE='MMRL,Release,no',DESCRIPTION='MMRL Release no', $
  FIELD=MME_CRAFT_LINE_NO,  FORMAT=P9, MISSING=ON, TITLE='MMRL,Craft,Line,No',DESCRIPTION='MMRL Craft Line No', $
$ For Project Misc Procurement as yet there is no way of telling if an item has gone past the planned stage
$ The MMR State will always be set to Unknown and hence the stock is assumed committed
DEFINE MME_PLANNED_QTY/P12.2C MISSING ON = IF MMR_STATE EQ 'Planned' THEN MME_DEMAND_QTY ELSE 0 ;, TITLE='MMRL,Planned,Qty',DESCRIPTION='MMRL Planned Qty', $
DEFINE MME_COMMITTED_QTY/P12.2C MISSING ON  = IF MMR_STATE NE 'Planned' OR 'Closed' THEN MME_DEMAND_QTY - MME_ISSUED_QTY ELSE 0 ;, TITLE='MMRL,Committed,Qty',DESCRIPTION='MMRL Committed Qty', $
DEFINE MME_PLANNED_COST/P12.2C MISSING ON = IF MMR_STATE EQ 'Planned' THEN MME_DEMAND_COST ELSE 0 ;, TITLE='MMRL,Planned,Cost',DESCRIPTION='MMRL Planned Cost', $
DEFINE MME_COMMITTED_COST/P12.2C MISSING ON  = IF MMR_STATE NE 'Planned' OR 'Closed' THEN MME_DEMAND_COST - MME_ISSUED_COST ELSE 0 ;, TITLE='MMRL,Committed,Cost',DESCRIPTION='MMRL Committed Cost', $
DEFINE INVENTORY_POSITION_COST/P12.2C = MME_ISSUED_COST ;, TITLE='Inventory,Position,Cost',DESCRIPTION='Inventory Position Cost', $

$=======================================================================================================
$ Inventory Vouchers
$=======================================================================================================

SEGNAME=INVENTORY_ITEM_VOUCHER, SEGTYPE=S1, PARENT=INVENTORY_ITEM,$
  FIELD=ITH_TRANSACTION_ID,  USAGE=P9L,  MISSING=ON, TITLE='Transaction,ID',DESCRIPTION=' Transaction ID', $
  FIELD=ITH_OBJVERSION,  USAGE=A14,  MISSING=ON, TITLE='Object,Version',DESCRIPTION='Object Version', $

  FIELD=ITH_ORDER_TYPE,  USAGE=A20,  MISSING=ON, TITLE='Order,type',DESCRIPTION='Order type', $
  FIELD=ITH_TRANSACTION_CODE,  USAGE=A10,  MISSING=ON, TITLE='Transaction,Code',DESCRIPTION='Transaction Code', $
$ Parts and Locations
  FIELD=ITH_PART_NO,  USAGE=A25,  MISSING=ON, TITLE='Part,no',DESCRIPTION='Part no', $
  FIELD=ITH_LOCATION_NO,  USAGE=A35,  MISSING=ON, TITLE='Location,no',DESCRIPTION='Location no', $
  FIELD=ITH_LOCATION_GROUP,  USAGE=A4,  MISSING=ON, TITLE='Location,Group',DESCRIPTION='Location Group', $
$ This refers to the MMR details
  FIELD=ITH_ORDER_NO,  USAGE=A12,  MISSING=ON, TITLE='Order,No',DESCRIPTION='Order No', $
  FIELD=ITH_LINE_ITEM_NO,  USAGE=P4,  MISSING=ON, TITLE='Line,Item,No',DESCRIPTION='Line Item No', $
$ When release is * this refers to MMRL otherwise it refers to a PO.
  FIELD=ITH_RELEASE_NO,  USAGE=A4,  MISSING=ON, TITLE='Release,No',DESCRIPTION='Release No', $

  FIELD=ITH_DIRECTION,  USAGE=A1,  MISSING=ON, TITLE='Direction',DESCRIPTION='Direction', $
$ Should really be 12.4 will change some time
  FIELD=ITH_COST,  USAGE=P12.4C,  MISSING=ON, TITLE='Cost',DESCRIPTION='Cost', $
  FIELD=ITH_QTY_REVERSED,  USAGE=P12.2C,  MISSING=ON, TITLE='Qty,reversed',DESCRIPTION='Qty reversed', $
  FIELD=ITH_QUANTITY,  USAGE=P12.2C,  MISSING=ON, TITLE='Quantity',DESCRIPTION='Quantity', $
DEFINE ITH_SIGNED_QUANTITY/P12.2C = IF ITH_DIRECTION EQ '+' THEN 0 - ITH_QUANTITY ELSE ITH_QUANTITY ;, TITLE='Signed,Quantity', DESCRIPTION='Signed Quantity', $
$ Accounting
  FIELD=ITH_PRE_ACCOUNTING_ID,  USAGE=P7L,  MISSING=ON, TITLE='Pre,Accounting,ID',DESCRIPTION='Pre Accounting ID', $
  FIELD=ITH_VOUCHER_NO,  USAGE=P11,  MISSING=ON, TITLE='Voucher,No',DESCRIPTION='Voucher No', $
$$ Always MPL but this needed for joins to GL.
  FIELD=ITH_VOUCHER_TYPE,  USAGE=A3,  MISSING=ON, TITLE='Voucher,Type',DESCRIPTION='Voucher Type', $
  FIELD=ITH_ACCOUNT         , FORMAT=A20   , MISSING=ON, TITLE='Account',DESCRIPTION='Account', $
  FIELD=ITH_YEAR_PERIOD_KEY , FORMAT=P6    , MISSING=ON, TITLE='Year,period,key',DESCRIPTION='Year period key', $
  FIELD=ITH_AMOUNT          , FORMAT=P12.2C , MISSING=ON, TITLE='Amount',DESCRIPTION='Amount', $
  FIELD=ITH_TRANS_CODE      , FORMAT=A50   , MISSING=ON, TITLE='Transaction,Code',DESCRIPTION='Transaction Code', $
  FIELD=ITH_VOUCHER_DATE    , FORMAT=DMYY  , MISSING=ON, TITLE='Voucher,Date',DESCRIPTION='Voucher Date', $
  FIELD=ITH_APPROVAL_DATE   , FORMAT=DMYY  , MISSING=ON, TITLE='Approval,Date',DESCRIPTION='Approval Date', $
$
DEFINE ITH_ISSUED_AMOUNT/P12.2C MISSING ON = ITH_AMOUNT ;, TITLE='Issued,Amount', DESCRIPTION='Issued Position per Voucher Trans Type MPL:M62',$
$ Definitions for FTE (if no maintenance period as in FINANCE then spend defaults to UNPROG)
DEFINE ITH_PROG_ISSUED_AMOUNT/P12.2C   MISSING ON = IF WOR_MAINT_PERIOD NE 0 OR 1 THEN ITH_ISSUED_AMOUNT ELSE MISSING ;, TITLE='Programmed,Maintenance,Issued,Amount', DESCRIPTION='Programmed Issued Amount _2 _3 etc',$
DEFINE ITH_UNPROG_ISSUED_AMOUNT/P12.2C MISSING ON = IF WOR_MAINT_PERIOD EQ 0 OR 1 THEN ITH_ISSUED_AMOUNT ELSE MISSING ;, TITLE='Unprogrammed,Issued,Amount', DESCRIPTION='Unprogrammed Issued Amount _1 only',$
DEFINE ITH_UNPROG_OPDEF_ISSUED_AMOUNT/P12.2C  MISSING ON = IF WOR_WORK_TYPE_ID LIKE 'OPDEF%' THEN ITH_UNPROG_ISSUED_AMOUNT ELSE MISSING ;, TITLE='Unprogrammed,Opdef,Issued,Amount', DESCRIPTION='Unprogrammed Work type starts OPDEF',$
DEFINE ITH_UNPROG_FLAGO_ISSUED_AMOUNT/P12.2C  MISSING ON = IF WOR_WORK_TYPE_ID LIKE 'FLAGO%' THEN ITH_UNPROG_ISSUED_AMOUNT ELSE MISSING ;, TITLE='Unprogrammed,Flago,Issued,Amount', DESCRIPTION='Unprogrammed Work type starts FLAGO',$
DEFINE ITH_UNPROG_MAINT_ISSUED_AMOUNT/P12.2C  MISSING ON = ITH_UNPROG_ISSUED_AMOUNT - ITH_UNPROG_OPDEF_ISSUED_AMOUNT - ITH_UNPROG_FLAGO_ISSUED_AMOUNT ;, TITLE='Unprogrammed,Maint,Issued,Amount', DESCRIPTION='Unprogrammed Maint not OPDEF or FLAGO',$
DEFINE ITH_FTE_TOTAL_ISSUED_AMOUNT/P12.2C MISSING ON = ITH_PROG_ISSUED_AMOUNT + ITH_UNPROG_ISSUED_AMOUNT ;, TITLE='Total,Issued,Amount', DESCRIPTION='Prog and Unprog Maintenance Issued Amount',$

$=======================================================================================================
$ Project extended details
$=======================================================================================================
SEGNAME=PROJECT_EXTENDED, SEGTYPE=DKU, PARENT=PROJECT, CRFILE=NEW_PROJECT, CRSEGNAME=SEG01, CRKEY=PRJ_PROJECT_ID,$
$
$=======================================================================================================
$ Activity extended details
$=======================================================================================================
SEGNAME=ACTIVITY_EXTENDED, SEGTYPE=DKU, PARENT=ACTIVITY, CRFILE=NEW_ACTIVITY, CRSEGNAME=SEG01, CRKEY=ACT_ACTIVITY_SEQ,$
$ CR details
SEGNAME=ACTIVITY_CHANGE_REQUEST, SEGTYPE=DKU, PARENT=ACTIVITY,CRFILE=NEW_ECO_REQUEST_EXT,CRSEGNAME=SEG01,CRKEY=ECO_REQUEST_NOP,$
$
$=======================================================================================================
$ Work order extended details
$=======================================================================================================
SEGNAME=WORK_ORDER_EXTENDED, SEGTYPE=DKU, PARENT=WORK_ORDER, CRFILE=NEW_WORK_ORDER, CRSEGNAME=SEG01, CRKEY=WOR_WO_NO, CRJOINTYPE=LEFT_OUTER, $
$
$=======================================================================================================
$ Employee extended Details
$=======================================================================================================
SEGNAME=EMPLOYEE_COST_EXTENDED, SEGTYPE=DKU, PARENT=EMPLOYEE_COST,CRFILE=NEW_COMPANY_PERSON_ALL,CRSEGNAME=SEG01,CRKEY=CPA_EMP_NO,$
$
$=======================================================================================================
$ PO extended details
$=======================================================================================================
$
SEGNAME=PURCHASED_ITEM_PART_DETAIL, SEGTYPE=DKU, PARENT=PURCHASED_ITEM,CRFILE=NEW_X_POL_PURCHASE_PART,CRSEGNAME=SEG01,CRKEY=POL_PART_NO, CRJOINTYPE=LEFT_OUTER,$
$
SEGNAME=PURCHASED_ITEM_SUPPLIER_DETAIL, SEGTYPE=DKU, PARENT=PURCHASED_ITEM,CRFILE=NEW_X_POL_SUPPLIER,CRSEGNAME=SEG01,CRKEY=POL_VENDOR_NO, CRJOINTYPE=LEFT_OUTER,$
$
$=======================================================================================================
$ Inventory extended details
$=======================================================================================================
SEGNAME=INVENTORY_ITEM_PART_DETAIL, SEGTYPE=DKU, PARENT=INVENTORY_ITEM,CRFILE=NEW_X_MME_PURCHASE_PART,CRSEGNAME=SEG01,CRKEY=MME_PART_NO, CRJOINTYPE=LEFT_OUTER,$
$


X ref file

FILENAME=NEW_COMPANY_PERSON_ALL, SUFFIX=XFOC , $
SEGMENT=SEG01, SEGTYPE=S1, $
FIELDNAME=FOCLIST , ALIAS=E00, USAGE=I9,
MISSING=ON, $
FIELDNAME=CPA_COMPANY_ID, ALIAS=E01, USAGE=A20,
MISSING=ON,
TITLE='Company,Id', $
FIELDNAME=CPA_EMP_NO, ALIAS=E02, USAGE=A11, FIELDTYPE=I,
MISSING=ON,
TITLE='Emp,No', $
FIELDNAME=CPA_PERSON_ID, ALIAS=E03, USAGE=A20,
MISSING=ON,
TITLE='Person Id', $
FIELDNAME=CPA_EMPLOYEE_STATUS, ALIAS=E04, USAGE=A20,
MISSING=ON,
TITLE='Person,Employed,Status', $
FIELDNAME=CPA_CURRENT_POS_CODE, ALIAS=E05, USAGE=A10,
MISSING=ON,
TITLE='Current,Pos,Code', $
FIELDNAME=CPA_CURRENT_ORG_CODE, ALIAS=E06, USAGE=A8,
MISSING=ON,
TITLE='Current,Dept,Code', $
FIELDNAME=CPA_EMP_CAT_NAME, ALIAS=E07, USAGE=A20,
MISSING=ON,
TITLE='Emp,Category', $
FIELDNAME=CPA_EMP_DIRECT, ALIAS=E08, USAGE=A20,
MISSING=ON,
TITLE='Directly,Emp?', $
FIELDNAME=CPA_SUBCONTRACTOR, ALIAS=E09, USAGE=A20,
MISSING=ON,
TITLE='Subcontractor,or,Agency', $
FIELDNAME=CPA_WTD_OPT_OUT, ALIAS=E10, USAGE=A5,
MISSING=ON,
TITLE='WTD,Opt,Out', $
FIELDNAME=CPA_OPERATOR, ALIAS=E11, USAGE=A30,
MISSING=ON,
TITLE='Data,Entered,By', $
FIELDNAME=CPA_CURRENT_SUP_EMP_NO, ALIAS=E12, USAGE=A11,
MISSING=ON,
TITLE='Current,Supervisor,Emp,No',
REFERENCE=CPA_EMP_NO, PROPERTY=PARENT_OF, $
FIELDNAME=CPA_CURRENT_SUP_NAME, ALIAS=E13, USAGE=A100,
MISSING=ON,
TITLE='Current,Supervisor', $
FIELDNAME=CPA_FNAME, ALIAS=E14, USAGE=A40,
MISSING=ON,
TITLE='First,Name', $
FIELDNAME=CPA_LNAME, ALIAS=E15, USAGE=A40,
MISSING=ON,
TITLE='Last,Name', $
FIELDNAME=CPA_EMPLOYEE_NAME, ALIAS=E16, USAGE=A100,
MISSING=ON,
TITLE='Name',
REFERENCE=CPA_EMP_NO, PROPERTY=CAPTION, $
FIELDNAME=CPA_INTERNAL_DISPLAY_NAME, ALIAS=E17, USAGE=A100,
MISSING=ON, $
FIELDNAME=CPA_TITLE, ALIAS=E18, USAGE=A40,

This message has been edited. Last edited by: hammo1j,



Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2
Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo
 
Posts: 888 | Location: Airstrip One | Registered: October 06, 2006Report This Post
Guru
posted Hide Post
Not really 7.6.2 bug, but when you use IE 7, run a report out of dev studio, forget to close the IE page, run te report again. Then dev studio closes the IE page but doesn't show the report. After that you can't run any report and the solution is restart dev studio.


Test: WF 8.2
Prod: WF 8.2
DB: Progress, REST, IBM UniVerse/UniData, SQLServer, MySQL, PostgreSQL, Oracle, Greenplum, Athena.
 
Posts: 454 | Location: Europe | Registered: February 05, 2007Report This Post
Master
posted Hide Post
Client install assumes Server is on same Machine



Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2
Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo
 
Posts: 888 | Location: Airstrip One | Registered: October 06, 2006Report This Post
Master
posted Hide Post
Cured the DKU alias problem by making copies of the referenced files with new MFDs with fieldnames chosen so the host file could xref without having to use the ALIAS. This works fine as a solution although it is tedious to do.



Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2
Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo
 
Posts: 888 | Location: Airstrip One | Registered: October 06, 2006Report This Post
Master
posted Hide Post
we ran into some user configuration issues after upgrading from 7.1.3 to 7.6.2, no user.prf files were moved so we had to go back in and put a generic file into each user's dir in basedir.

Also, at least one user became completely corrupt and we were unable to delete them or modify their account. We had to go through a bit of searching to find a solution to fixing a "corrupt user profile" and the user lost all his saved reports, good thing we made a backup.


Prod: Single Windows 2008 Server running Webfocus 7.7.03 Reporting server Web server IIS6/Tomcat, AS400 DB2 database.
 
Posts: 611 | Registered: January 04, 2007Report This Post
Gold member
posted Hide Post
Reply to issue posted by Frans: Issues running Dev Studio reports with IE7
We just encountered this issue at IBI as well and we are actively researching.
As a workaround, you can set Dev Studio to open new browser session for every request by checking the option "Use new browser to execute" in the General tab of the Windows Options dialog
As noted earlier, issue occurs with IE7 and not IE6.


Regards,
Dimitri
 
Posts: 66 | Location: New York | Registered: August 18, 2003Report This Post
Master
posted Hide Post
Delete domain in MR Applet

Returns 1139 Unknown error and does not do delete.

Delete domain in Dev Studio

Returns cannot delete html filename but does do the delete.

Delete domain in MR Administration - HTTP 500 but DOES do the delete!

This message has been edited. Last edited by: hammo1j,



Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2
Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo
 
Posts: 888 | Location: Airstrip One | Registered: October 06, 2006Report This Post
Platinum Member
posted Hide Post
All 3 worked for me. Suggest you provide details to techsupport. Maybe related to from where the basedir was migrated and/or user rights and/or app server.


Brian Suter
VP WebFOCUS Product Development
 
Posts: 200 | Location: NYC | Registered: January 02, 2007Report This Post
  Powered by Social Strata Page 1 2 3 4  

Read-Only Read-Only Topic


Copyright © 1996-2020 Information Builders