listbox holding last selected index

Author
Messages
Demi
Veteran Member
Posts: 67
Veteran Member

    A few months ago we adjusted our cusomized forms to work in both IE and Chrome. Now we have discovered something strange.  We have a customized version of pr35.2 for time entries. We made the pay-code field a select field that has hard-coded values for a drop down and/or the users can also type in their pay code if they want to. What has been discovered is ... if an employee has preexisting records on file and the timekeeper tries to add a new entry (overtop of an existing line), when they get to the paycode, if they enter the same paycode (say R for regular), the field gets populated with the NEXT paycode and not the code they entered. This behavior is also carrying over to a next or previous employee. If the last paycode entered for employee 1 was an R, then when you try to enter R for the Next(or previous) employee the dropbox chooses RA. I've added some code for VALUES_OnFocus or OnBlur to clear out the form field and reposition the dropbox selections, but so far nothing is working. The previously selected value is being held somewhere that I can't seem to find. Has anyone else encountered this? Can anyone assist with some possible solutions? Our timekeepers are not happy and I've exhausted what I'm familiar with.

    Demi
    Veteran Member
    Posts: 67
    Veteran Member

      I'm going to add some additional information here; hoping that my original post was either 'unclear' or if this subject needs to be moved to another forum. I'm really hoping that someone might have some advise to pass along to me.  I should add that this form has worked in Mingle in the past in IE.  Now we have transitioned over to Mingle 'OS'. The forms are still the same, they are simply viewed through the OS window in IE.  

      We are experiencing an issue with one of our design studio forms.  We have modified the pr35.2 to use the Pay Code field as a dropdown selection box with hard coded values.  To do this we changed TRD-PAY-CODE to be of type Select and  added values of R-Regular, RH-Regular Holiday and RM- Regular Modified. Now we are experiencing an issue with our ‘typed’ PayCode values and they are not populating correctly.  It ‘appears’ that the pay code field is not ‘clearing’ the fields metadata correctly between some functions and messages. The field on the form is retaining its previous value; so that if you ‘retype’ the same value (say ‘R'; it then populates the field with ‘RH’. I have added a defval=’’ option to the field, added routines to clear out the form field, tried clearing and repopulating the values on the select.  Nothing has made a difference to this behavior.

      Since the error occurs during various functions, I will list 2 instances.  1- Enter the custom form, fill in company, batch and employee and begin adding line items(fc=A, PayCode =R), then click Change to add the record.  You should receive ‘Must Inquire before using this function code’. Then clear out the line-fc fields (or ctrl+shift+k) and click Inquire. Then try to reenter the same time on the same line(fc=A, PayCode=R). This were our PayCode gets populated with “RH” and not “R” as selected.

      This same behavior occurs, to the same item lines; when performing any additional for functions – Next,  Previous, even an Inquiry.   

      What I have found, is if I perform a ‘Clear IOS Cache’ between the events, I can eliminate the behavior from carrying over to the next entry and the entries behave as desired. Would it be the UI Definitions, Drill Rules?  How would you code something like that inside of the DS form? I don’t know.  Any insight or information would be greatly appreciated.

      Ragu Raghavan
      Veteran Member
      Posts: 468
      Veteran Member
        I am guessing that the original field was a Text and the source was TRD-PAY-CODE. This was deleted and replaced by a hard-coded List with the source pointing to TRD-PAY-CODE. I have seen this act unpredictably in the past.

        What I would do is delete this field. Create a new list (select9 for example). Don't assign a source. And in the routine
        form_onBeforeTransaction
        var vPayCd = lawform.getFormValue("select9")
        lawForm.setDataValue("TRD-PAY-CODE", vPayCd)

        And in the routine
        form_AfterTransaction
        var vPayCd = lawForm.getDataValue("TRD-PAY-CODE");
        lawForm.setFormValue("select9", vPayCd)

        see if that makes any difference. (the syntax is off the top of my head, you will need to check)
        Demi
        Veteran Member
        Posts: 67
        Veteran Member

          Hi Ragu! Thank you so much for your response. Yes, you were correct in guessing that it was the TRD-PAY-CODE field. I finally got around to trying what you suggested. I've been working on migrating some 4GL Benefit extracts to IPAs for our GHR implementation and finally got a breather today. I did as you suggested but I am still receiving the same results - UGH! I've tried so many different things but nothing is making any difference to my new select field. A brand new form, no scripting at all. I moved the TRD-PAY-CODE field to the end of the Detail line and added a new select field next to the hours field in the detail line. I have it defined as R-Regular Hours Worked
          R19-COVID19 Union @ work
          RA-Regular Above
          RC-Working Off-Site-Seminar-Conf.


          I then call up the form and begin entering data. Our timekeepers are 'speed entry' people so they will often hand-type the values rather than look them up and select it. The field works fine when the very first, original field value is empty OR if you 'always' use the selection picker. But if you try to go back over a pre-filled field(R) and re-type the 'same' value; the selector chooses the NEXT value (R19) and not the one you typed(R). I have tried clearing out the field/page using lawson hotkeys, I've manually deleted the field values before entering, I've added a 'default value' and a blank selection to the select field(only to get 2 blanks). I've even tried coding 'selection repoints' to a null entry; nothing has worked. I've been playing around with some of the various attribute settings but haven't found one that works. I know years ago, it was said that if you make the field size 0, the user has to use the selection picker. We currently have 96 different codes and if I were to do that, the timekeepers would not be happy. My open ticket with Infor has not produced anything helpful so far. Thank you again.

          Demi
          Veteran Member
          Posts: 67
          Veteran Member
            Quick Update .... my descriptions have been wrong. I've been told that part of what I have been describing is how the listbox selection 'picker' is supposed to function. ie. when typing a value ... say R... for each R key depression, the picker will scroll through the R values; R R19, RA, RC and so on. 'My' actual problem is occurring between page functions (Inquire, Next, Previous,etc). When advancing to a new page (next or previous employee).. even though the page refreshes, my listbox does not. So when the user presses R on a new screen for the first instance, they get R19.
            Ragu Raghavan
            Veteran Member
            Posts: 468
            Veteran Member
              In the past, when Design Studio did not work the way I expected it to, I engaged a JavaScript expert. He goes into F12 -developer tools and figures out exactly what is going on. Sometimes there is a solution. At least once, we had to figure out a workaround, because it involved mods to delivered code.
              ---