ESS new custom form

 10 Replies
 1 Subscribed to this topic
 17 Subscribed to this forum
Sort:
Author
Messages
Chesca
Veteran Member
Posts: 490
Veteran Member

    My users want a mod to ESS. They want to add a link on the ESS page so that employees can click on it and take them to a fill-able enrollment form. I have no clue as to where to start or what to look for  in order to accomplish this.
    Would I need design studio for this customization?  
    Has anyone successfully build a custom form in ESS and/or MSS?

     

    Woozy
    Veteran Member
    Posts: 709
    Veteran Member

      Hi bernfc10,

      You don't really say what version(s) you are using, so I'll answer from an LSF v9.0.1.11/EMSS 10.0.3 perspective.

      You certainly can use DesignStudio to do this, if you own it and want to leverage it this way.  We do own this, but we have moved away from it because it was more difficult to manage than we wanted.

      The other option is to create new pages or clone existing pages using html/javascript.  This is not for the feint of heart, because there isn't much documentation and it takes a significant amount of html, javascript, css, and related knowledge.  However, it isn't rocket science, and you can do almost anything.

      We have extensively modified our ESS/MSS pages, particularly around benefits and payroll screens.  Basically, we just had to poke around in the existing pages and fiddle around until we got things to work.  We do all of our customizations in DEV using DreamWeaver, and then promote the completed pages from DEV to PROD when they are ready.

      You can certainly build custom forms.  To start learning, you might try copying-and-renaming a page that already exists and then fiddle around with that modified page.  You can navigate to it by creating a shortcut in Portal (see the attached screenshot of a shortcut to one of our custom pages). 


      The trick to new pages is that you generally have to include all the objects that wrap it - javascript pages, css, etc. which is why it is good to start with a clone and go from there.

      This is a gigantic topic, so I can't even attempt to give you much direction here - other than to say that many of the questions are answered already on LawsonGuru.  If you have specific issues that you can't resolve, post them.

      Good luck!

      Kelly

      Kelly Meade
      J. R. Simplot Company
      Boise, ID
      Chesca
      Veteran Member
      Posts: 490
      Veteran Member
        Thank you, Woozy!
        mikeP
        Veteran Member
        Posts: 151
        Veteran Member

          Woozy, if you're still out there...

          Is it possible to run a SQL query or invoke a stored procedure from an ESS page?  My users want me to add leave bank balance and history to an ESS page.  We currently provide this info via Crystal reports so the SQL is already working, but they are only available to a handful of users.

          The.Sam.Groves
          Veteran Member
          Posts: 89
          Veteran Member
            Does, 

            /lawson/xhrnet/leavebalancebegin.htm 

            not already do that for you or are you looking to embed that information into another page?
            Attachments
            mikeP
            Veteran Member
            Posts: 151
            Veteran Member

              That's the form I'd like to modify.  It only shows balances and history thru the last payroll process.  In our CR, we spin through pending ESS time entry, unposted time reocords, and unposted absence management transactions to get the actual current balance and history. 

               

              I've worked on one of these forms before, something for mobile inbasket, I disremember now.  It did some simple retrieval with DME calls, but for this application, those would take a lot of iterative processing, loops within loops within loops. I was hoping to find a way to pull the same info with SQL and transfer the heavy lifting to the DB server.

              Woozy
              Veteran Member
              Posts: 709
              Veteran Member
                Hi MikeP,

                Unfortunately, you can't just dump in a SQL query. However, if you can build a 4GL form that shows the data you're looking for, then you can do a DME query from your ESS page and return the data to the page. If you already have the SQL query that provides you the data that you want, converting that into a 4GL form shouldn't be terribly difficult - but the devil is in the details.

                I built a very complex 4GL program that provides a much more user-friendly view of leave balances along with leave used in the past (from TAEMPTRANS) and requested for the future (from PRPENDTIME) by employee by plan and year. Another developer then built an ESS form that queried my custom program and displayed the data. However, my program also has to take into limits, carryover, accrual rate changes, plan transfers, etc. It is pretty ugly. It just depends how involved you need the data to be.

                As The.Sam.Groves pointed out, the basic information is on leavebalancebegin.htm, if that will work for you.



                Kelly Meade
                J. R. Simplot Company
                Boise, ID
                mikeP
                Veteran Member
                Posts: 151
                Veteran Member

                  Woozy,

                  This sounds promising, and I finally have time to think about it:

                  "If you already have the SQL query that provides you the data that you want, converting that into a 4GL form shouldn't be terribly difficult - but the devil is in the details."

                   

                  Any tips for getting started with this? 

                  I haven't worked with custom forms yet, but one of our guys has put together instructions for using PGMDEF to create a basic 4GL form to add, change or delete records for a custom table that selects the custom table from a list of exiting tables.  I don't see how I could base it on our SQL query.

                  Woozy
                  Veteran Member
                  Posts: 709
                  Veteran Member
                    Oof! I hoped you had at least a little 4GL/COBOL background. If you don't, that makes it more difficult. Basically, you'll need to use PGMDEF to build the basic outline of the program (screen layout, primary table, etc). However, once that is done, you will have to take the initial source files and modify them to add your logic.

                    What I meant about the SQL query is that it will tell you what tables you need, how they are joined, and what your data selection is (assuming that the joins are correct and the keys are complete). However, in the code you will have to adapt that information into cobol logic - get a recordset from table 1, apply any data selection (go to next record if xyz), then for each record query table 2 using the values returned from query 1, apply any data selection, then query table 3... This isn't difficult, but it does require a good level of understanding about how the APIs work. It is also very helpful to understand the indexes for each table and the relationships between the tables (available by doing a dbdoc or using dbdef).

                    I'd also suggest that you download copies of the following documents from the Infor KB: "Application Development Workbench", "Application Development Workbench Standards", and "Lawson 4GL Application Program Interfaces". These provide some good reference material. Mostly, you're going to have to look at some other programs to see how they work and then duplicate them.

                    Good Luck - I hope you can get this figured out.
                    Kelly Meade
                    J. R. Simplot Company
                    Boise, ID
                    mikeP
                    Veteran Member
                    Posts: 151
                    Veteran Member
                      I was hoping there was a way to invoke a stored procedure, but I can do COBOL. I nearly wore out a Northgate keyboard banging out COBOL applications on Xerox and Honeywell mainframes back when I was starting out. (Now everyone knows how old I am.) Though I haven’t developed Lawson 4GL/COBOL, I have pored over listings a time or two, ironically to adapt procedural code to SQL for use in Crystal.

                      I’ve had the Workbench manuals for some time, but I just looked at the API manual, and that will be helpful. I had to infer what all those called DB procs did from their names in the past.

                      Thanks for getting me pointed in the right direction.
                      Chesca
                      Veteran Member
                      Posts: 490
                      Veteran Member
                        Thank you all for your help but my uses are no longer considering this. Thanks