About Me

My photo
I work for Myriad IT Services . Connect with me on linked in here . I'm always looking for the next strategic engagement.

Monday, 23 January 2017

F98780R F98780H and the case of the missing BSFNs

We recently upgraded a site to 9.2.1, I kinda wish I did not.  There are a lot of changes here.  Most significantly from a change management point of view there is significant changes to:

  • media objects and them being stored in the database
    • Hopefully you have no mods in this area, you cannot turn this off!!
  • source files for C and H and BSSV being stored in the database.
    • Hmm, also needs some refinement.

This post focuses on the latter and the problems that I had with it.

I’d been bought in on the upgrade (where a couple of full packages has been built), but there was some OL integrity issues.  Central objects were okay, because this was a simplified upgrade.  This means that the original central objects were the base – phew – good news.

But some missing OL records was causing grief.  We were getting the following in the logs of the server package build:

Mon Jan 23 12:14:22  -  spkgutil.c:8516 PKGUTL0113 ERROR: Command CPY OBJ('/Packages/UA7012100/checkin/source/b5501820.c') TOOBJ('/Packages/UA7012100/source/CCUSTOM/b5501820.c') SUBTREE(*ALL) REPLACE(*YES) failed. Failed to copy the directory.

Mon Jan 23 12:14:22  -  spkgclnt.c:268 PKGCLT0033 ERROR: Failed to transfer file /Packages/UA7012100/checkin/source/b5501820.c to CHIJTD42. Error Error in file I/O

Mon Jan 23 12:14:22  -  spkgclnt.c:1179 PKGCLT0054 ERROR: Failed to transfer /Packages/UA7012100/checkin/source/b5501820.c to the server.

This is frustrating.

The source files are there in the UA920\source dir, but they are not being transferred.  Note that I’m familiar with the F98780R and also the F00942T and the F9860.SIGTFFU1.  I know that the package build (full) looks at the F9860 to see if there is a record in the F98780R for the object, and if there is a 1 in the SIGTFFU1 field, then it’s assumed that there is a file ready in the COUA920.F98780R file.  But – what if you needed to patch OL a little bit, merge a few extra records in because the package build was not working?  You have a problem.

It seems that the F98780R only contains 1 row per object, this is either based upon a package built or an OMW transfer:

image

See above one insert as a result of the package build and 3 due to object transfers.  So if there is a 1 in F9860 and it’s a full package, it seems that if there is no record in F98780H for your object – it’s not going to build.  So – how are you going to fix this?  Well, it seems that the best method is to put your objects into a project and promote them.  This is going to ensure that they are going to have records in F98780H when it’s build time.

select * from ol920.f9861 where simsar = '' and sipathcd = 'UA920';
select * from ol920.f9860 where siobnm = 'B5500001';
select * from sy920.f00942t;
select table_schema from qsys2.systables where table_name = 'F98780H';
select * from coua920.f98780h where ahpid <> 'UA6122300';

My other option would be to reset the F00942T so that it did not think it had processed all of the files, and probably deleted the contents of F98780H – that might have sorted things too?

image

You can also see a new field in the pathcode master application too, which correlated to the F00942T

I’ve been a bit lackadaisical in this post with my dichotomy between F98780R and F98780H, so let me define:

F98780H       Object Librarian Archive History                               
F98780R       Object Librarian Archive Repository                            

You can refresh these tables (as I needed to do), by updating F00942T and then running your build again.

update sy920.f00942t set emdbsrcflg =0 where empathcd = 'UA920';

You’ll see the following in the D:\JDEdwards\E920\UA920\package\UA920FD\serverPkgbuild log file:

Tue Jan 24 06:40:16  -  Check where the file repository is located, Deployment Server or Database.
Tue Jan 24 06:40:17  -  For each object, a record will be inserted into F98780R/F98780H table.
Tue Jan 24 06:40:17  -  This is where package build will retrieve the include, source and bitmap files.
Tue Jan 24 06:40:17  -  This process will only run once for each pathcode.
Tue Jan 24 06:40:17  -  This might take a while so be patient.
Tue Jan 24 06:40:17  -  To monitor the progress, the logs in the work directory should increase in size.
Tue Jan 24 06:40:17  -    Logs directory: \MACHINE\E920\UA920\package\UA920FD\Work\.
Tue Jan 24 06:40:18  -  Clearing the F98780R and F98780H tables.
Tue Jan 24 06:40:20  -  Start the insert of objects into the Repository Tables: F98780R and F98780H.

Instead of (once this is done)

Mon Jan 23 11:44:03  -  Check where the file repository is located, Deployment Server or Database.
Mon Jan 23 11:44:03  -  Source/Include/Res files will be retrieved from the F98780R repository.
Mon Jan 23 11:44:03  -  Check is complete, package build will continue.
Mon Jan 23 11:44:03  -  Files will be retrieved from Database Repository.

This is where the additional 2GB of storage is needed for your first full package in 9.2.1 tools release – all of your source and include.

Collaborate presentation on JD Edwards

I'm lucky enough to be presenting at collaborate later this year.  Actually, my presentation is going to be on Sunday April 2nd at 12:30pm in Lagoon E.  

What am I presenting?  I'm presenting on innovation in JD Edwards and focusing on mega trends.  I know that this might seem a little high level from a technical person like me, but there is going to be technical details and examples of innovation.

Mega trends are very important.  There are more people and smarter people that know business is going to spend billions of dollars in these areas.  They know that these areas are going to provide strategic and tactical advantages that will outweigh their costs.

This might seem basic and ROI might seem difficult to calculate initially, but these areas are not going away.

https://collaborate.oaug.org/ 

We are talking about:

image

  • IOT
    • real world examples saving time and money
    • AWS and JDE
  • Cloud
    • Elastic AWS implementations and cloud formations.
  • Social
    • social with ERP analytics
    • social with gamification
    • social feeds
  • Mobile
    • exploiting AIS and microservices
    • reusable and extensible code and methodologies
  • Big Data
    • farming for competitive advantage
    • We’ll farm your ERP analytics data and show you how to make ROI
    • Answers to questions you have not asked yet!

We are going to look at specific examples of how these can all be tied in together to assist you create a competitive advantage. I’ll demonstrate how JD Edwards might be able to assist you in you mega-trend compliance in ways that you might not have contemplated.

Well see examples and mash-ups using CAFE1, RIA, BSSV, AIS, AWS and more to show you how you can quickly adopt some additional megatrend compliance.

Myriad will have a booth on the floor too, so if you want to come and tell me about your innovations in JDE, I’d love to hear from you at collaborate.

Friday, 20 January 2017

reconciliation of object librarian and central objects

This is a sneaky AS/400 SQL statement that will reconcile central objects F987* tables with F9861.  So this essentially gets a massive list of distinct object names from CO and see’s if there is a F9861 record for that object.  So this is a nice way of determining if you have orphan central objects – or missing OL records.

select distinct object_name from (
SELECT distinct THOBNM as object_name FROM COUA920.F98710 union   
SELECT distinct TDOBNM as object_name FROM COUA920.F98711 union   
SELECT distinct TPOBNM as object_name FROM COUA920.F98712 union   
SELECT distinct TLOBNM as object_name FROM COUA920.F98713 union   
SELECT distinct BVOBNM as object_name FROM COUA920.F98720 union   
SELECT distinct ELOBNM as object_name FROM COUA920.F98740 union   
SELECT distinct DTOBNM as object_name FROM COUA920.F98743 union   
SELECT distinct SFOBNM as object_name FROM COUA920.F98745 union   
SELECT distinct FTOBNM as object_name FROM COUA920.F98750 union   
SELECT distinct FSOBNM as object_name FROM COUA920.F98751 union   
SELECT distinct AHOBNM as object_name FROM COUA920.F98752 union   
SELECT distinct ADOBNM as object_name FROM COUA920.F98753 union   
SELECT distinct RTOBNM as object_name FROM COUA920.F98760 union   
SELECT distinct RSOBNM as object_name FROM COUA920.F98761 union   
SELECT distinct BCOBNM as object_name FROM COUA920.F98762) as tbl
where not exists (
select 1 from ol920.f9861
where sipathcd = 'UA920'
and siobnm = object_name);

Tuesday, 17 January 2017

tools release application release matrix (-Keanu Reeves)

 

This is a rehash of the support site, but really important and nice to have a quick reference of what you are allowed to download for what release.  Nice that if you are running on the 9’s then you can take 9.2.1 – but you’ll get a mashed up edition of functionality.

JDEdwards OneWorld EnterpriseOne Application Releases
Application Release XE/ERP8 8.10 8.11 8.11 SP1 8.12 9.0 9.1 9.2
Compatible
Tools Release
SP23/24 X X X X X X X
  8.93 X X X X X X
  8.94 8.94 X X X X X
  8.95 8.95 8.95 X X X X
  8.9 8.96 8.96 8.96 X X X
  8.97 8.97 8.97 8.97 X X X
  8.98 8.98 8.98 8.98 8.98 X X
  8.98.1 8.98.1 8.98.1 8.98.1 8.98.1 X X
  X 8.98.2 8.98.2 8.98.2 8.98.2 X X
  X 8.98.3 8.98.3 8.98.3 8.98.3 X X
  X 8.98.4
(8.98.4.11 or earlier)
8.98.4
(8.98.4.11 or earlier)
8.98.4
(8.98.4.14 Terminal Release)
8.98.4
(8.98.4.14 Terminal Release)
X X
  X X X X 9.1.0.0 9.1.0.0 X
  X X X X 9.1.2.0 9.1.2.0 X
  X X X X 9.1.3.0 9.1.3.0 X
  X X X X 9.1.4.0 9.1.4.0 X
  X X X X 9.1.5.0 9.1.5.0 X
  X X X X 9.2.0.x 9.2.0.x 9.2.0.x
  X X X X 9.2.1.x 9.2.1.x 9.2.1.x
 
 
Tools Release Schedule
SP24 Patch Release Targeted GA Expires
  24.2.1 12/19/2012 12/31/2013
  24.2.2 06/24/2014 TBD
8.97 Patch Release Targeted GA Expires
  8.97.2.8 05/22/2009 05/11/2010
  8.97.3.0 05/27/2009 05/11/2010
8.98 Patch Release Targeted GA Expires
  8.98.3.4 10/26/2010 30/03/2011
  8.98.4.0 12/14/2010 09/16/2011
  8.98.4.1 12/29/2010 06/14/2011
  8.98.4.2 03/30/2011 08/03/2011
  8.98.4.3 06/14/2011 09/16/2011
  8.98.4.4 08/03/2011 11/30/2011
  8.98.4.5 09/16/2011 02/08/2012
  8.98.4.6 11/30/2011 04/07/2012
  8.98.4.7 02/08/2012 06/25/2012
  8.98.4.8 04/07/2012 06/25/2012
  8.98.4.9 06/25/2012 09/25/2012
  8.98.4.10 09/25/2012 06/03/2013
  8.98.4.11 12/19/2012 12/02/2013
  8.98.4.12 6/03/2013 07/22/2014
  8.98.4.13 12/02/2013 07/22/2014
  8.98.4.14 (Terminal Release for 8.98.x) 07/22/2014 Sustaining Support
9.1 Patch Release Targeted GA Expires
  9.1.0.0 06/12/2011 09/18/2012
  9.1.0.1 12/20/2011 04/10/2012
  9.1.0.2 03/06/2012 05/29/2012
  9.1.0.3 04/10/2012 08/22/2012
  9.1.0.4 05/29/2012 Sep'2012
  9.1.0.5 08/22/2012 Nov'2012
  9.1.2.0 09/18/2012 Jan'2013
  9.1.2.1 10/01/2012 01/22/2013
  9.1.2.2 11/29/2012 03/11/2013
  9.1.2.3 01/22/2013 04/09/2013
  9.1.2.4 03/11/2013 04/23/2013
  9.1.3.0 04/08/2013 12/17/2013
  9.1.3.1 04/23/2013 07/29/2013
  9.1.3.2 06/25/2013 11/29/2013
  9.1.3.3 07/29/2013 12/17/2013
  9.1.3.4 10/30/2013 12/17/2013
  9.1.4.0 12/17/2013 04/03/2014
  9.1.4.1 12/17/2013 02/27/2014
  9.1.4.2 01/14/2014 04/03/2014
  9.1.4.3 02/27/2014 04/03/2014
  9.1.4.4 04/03/2014 07/15/2014
  9.1.4.5 06/03/2014 07/15/2014
  9.1.4.6 07/15/2014 12/09/2014
  9.1.4.7 09/11/2014 01/27/2015
  9.1.5.0 12/09/2014 01/27/2015
  9.1.5.1 12/22/2014 04/21/2015
  9.1.5.2 01/27/2015 06/09/2015
  9.1.5.3 04/21/2015 07/21/2015
  9.1.5.4 (Web Only Maintenance Pack) 06/09/2015 09/28/2015
  9.1.5.5 07/21/2015 11/18/2015
  9.1.5.6 (Web Only Maintenance Pack) 07/21/2015 02/10/2016
  9.1.5.7 11/18/2015 04/12/2016
  9.1.5.8 (Web Only Maintenance Pack) 02/10/2016 10/06/2016
  9.1.5.9 04/12/2016 10/06/2016
  9.1.5.10 (Terminal Release for 9.1.x) 10/06/2016 Sustaining Support
9.2 Patch Release Targeted GA Expires
  9.2.0.1 10/06/2015 03/11/2016
  9.2.0.2 01/13/2016 05/24/2016
  9.2.0.3 03/11/2016 07/26/2016
  9.2.0.4 (Web Only Maintenance Pack) 05/24/2016 09/15/2016
  9.2.0.5 07/26/2016 2016-04
  9.2.0.6 (Web Only Maintenance Pack) 09/15/2016 2017-01
  9.2.0.7 12/20/2016 2017-1
  9.2.0.8 (Web Only Maintenance Pack) 2017-1 TBD
  9.2.0.9 (Terminal Release) 2017-2 TBD
  9.2.1.0 11/14/2016 TBD
  9.2.1.1 2017-1 TBD
 
 

Monday, 16 January 2017

JDE UDO addendum–pathcode not control tables.

Just a quick note, as it’d not clear on my previous post.

Out of the box, most of the UDO tables are mapped to the “Central Objects” datasource for the pathcode of the environment that you are logged into.  These are not in control tables.

For example, out of the box, they resemble the below:

JPY920    F952400    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F952410    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F952415    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F952420    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F952425    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F952430    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F952435    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F952440    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F952450    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F952460    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F9524810    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F9524820    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F9524830    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F9524840    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1
JPY920    F9524850    TBLE    Central Objects - PY920    *PUBLIC    AV    P         1

The F9860W and F9861W tables are mapped to object librarian

JPY920    F9860W    TBLE    Object Librarian - 920    *PUBLIC    AV    P         1

So, if you have environments that share pathcodes, then you are also sharing UDO’s

Friday, 13 January 2017

UDO’s for dummies part 1

It’s all new and exciting….

two new apps that you need to look into:

P98220U - Work with User Defined Objects

image

P98220W -  Object Management Workbench – Web

image

Look much nicer than:

image

But has the same information at the same status’

Only when you project has some UDO’s in it, can you do something with it:

image

So now you have two places to do things and you need to know what you want to do before you can do them.

Even if u have mixed objects in the project, we are able to do transfers with OMWWEB

image

Although it seems that if you have mixed objects in the project and you promote with OMWWEB, traditional objects cannot be transferred / will prevent the project from moving.

In my example the project moved form 32 to 26 with an issue, as there are no activity rules for objects. 

image

When I tried to move from 26 to 32, I had errors – as functionality was attempted to be triggered.

image

I was able to remove R0010P from the project and then I could transfer it to 32 again.

All logging was available in the web:

image

not really the fatty – only bits and bobs

image

And you cannot view logging for the project, which is strange:

image

Yet you can for projects that have traditional objects.

This is just my first post on 1 hour of lessons on the new OMWWEB, I’m sure there are going to be more to come.

It’s just like when OL went to OMW… good fun.

 

UDOs Defined as

  1. Queries - fields and QBE columns you select from a form and add conditions to in order to make the search criteria more specific.
  2. Grid Formats - a selection of the columns you choose to display, the sequence in which you want them displayed, and how information is displayed in your grid.
  3. Composite Application Framework - a user interface framework that enables JD Edwards EnterpriseOne applications to integrate with multiple third-party content and applications, as well as other EnterpriseOne applications.
  4. EnterpriseOne Pages -the first screen end-users see when they log into EnterpriseOne. They are HTML files and can contain any HTML-enabled functionality, such as interactive process flows, URL links and web pages, company logos, and so on.
  5. One View Reports - a Business Intelligence (BI) Publisher data model, a BI Publisher report, the report definition for the One View Report, which is the metadata for the report and resides in JD Edwards EnterpriseOne.
  6. One View Watchlists - a collection of items that match user-defined criteria and contain information to which users have selected to be alerted.
  7. Composed Pages (starting with 9.2.0.2) - EnterpriseOne Pages created inside EnterpriseOne using Page Composer.
  8. Images (starting with 9.2.0.2) - Pictures you can use to customize your tiles in Page Composer.

 

Tables UDOs are Located in

F952400    User Generated Contents Detail
F952410    Composite Page
F952415    Image
F952420    OneCenter Watchlists Detail
F952425    Notification
F952430    Advance Query
F952435    Dynamic Form Personalization
F952440    Grid Formats Detail
F952450    CafeOne Layout Table
F952460    Default UDO Detail
F952471    Modified Web Object Metadata

F9860W    Web Object Master Table
F9860WD    Web Object Language Descriptions Table

F9861W    Web Object Librarian Detail

Thursday, 29 December 2016

E920 upgrade JDE TCs failing, F98950 R89952450

Getting this in the logs:

2400/6448 WRK:Starting jdeCallObject            Thu Dec 29 14:04:11.762065    jdb_rst.c1243
    JDB9900307 - Failed to find table specifications

2400/6448 WRK:Starting jdeCallObject            Thu Dec 29 14:04:11.762067    jdb_rq1.c1883
    JDB3100007 - Failed to get valid table specifications

2400/6448 WRK:Starting jdeCallObject            Thu Dec 29 14:04:11.762070    tcinit.c1250
    TCE009101 - Couldn't open F952450.

Funny thing is (well, it’s not funny…  This is a new pathcode that is being upgraded – UA920.

This table is new in 920 and should be in central objects.

I can see that it does exist and has the right column count:

select count(1) from qsys2.syscolumns where table_schema = 'COUA920' and table_name = 'F952450';

This did not fail for DV920 or PY920… so we have something specific for UA920.

I enabled logging on the dep server to find out more…

ec 29 14:04:11.762060 - 2400/6448 WRK:Starting jdeCallObject            Exiting JDB_FreeUser with Success(UserHandle 0D3F98E0)
Dec 29 14:04:11.762061 - 2400/6448 WRK:Starting jdeCallObject            Exited jdeCloseDictionary with DDType 0
Dec 29 14:04:11.762062 - 2400/6448 WRK:Starting jdeCallObject            JDB9900913 - Failed to create global table specs for F952450
Dec 29 14:04:11.762064 - 2400/6448 WRK:Starting jdeCallObject            JDB9900307 - Failed to find table specifications
Dec 29 14:04:11.762066 - 2400/6448 WRK:Starting jdeCallObject            JDB3100007 - Failed to get valid table specifications
Dec 29 14:04:11.762068 - 2400/6448 WRK:Starting jdeCallObject            Exiting JDB_OpenTable(Table = F952450) with Failure
Dec 29 14:04:11.762069 - 2400/6448 WRK:Starting jdeCallObject            TCE009101 - Couldn't open F952450.
Dec 29 14:04:11.762071 - 2400/6448 WRK:Starting jdeCallObject            Entering JDB_CloseTable (hRequest 087A5A40)
Dec 29 14:04:11.762072 - 2400/6448 WRK:Starting jdeCallObject            Entering JDB_CloseTable(Table = F98950)
Dec 29 14:04:11.762073 - 2400/6448 WRK:Starting jdeCallObject            Entering JDB_ClearSequencing (hRequest 087A5A40)
Dec 29 14:04:11.762074 - 2400/6448 WRK:Starting jdeCallObject            Exiting JDB_ClearSequencing with Success

Then I think about the fact that this is a new path code and I look in the spec.ini

D:\JDEdwards\E920\UA920\spec & planner

[SPEC LOCATIONS]
PLANNER_DataSource=Local - PLANNER Specs
PLANNER_Package=E920
DV920_DataSource=Local - PLANNER Specs
DV920_Package=E920
PD920_DataSource=Local - PLANNER Specs
PD920_Package=E920
PS920_DataSource=Local - PLANNER Specs
PS920_Package=E920
PY920_DataSource=Local - PLANNER Specs
PY920_Package=E920    

Okay, I think that this might be it

I add

UA920_DataSource=Local - PLANNER Specs
UA920_Package=E920 

And try again.

Am I confident?  No, I leave logging on…  this is the true definition of CNC confidence with table conversions.  If you think you’ve nailed it – you turn logging on in the client jde.ini on the dep server.

image

I should have been more confident – problem solved.