INLINEEDITING function

AlterantAlterant Member Posts: 19
Hello!

In help it is said that this function is related to the tablebox object, but in symbol menu it is related to the currform object. In the form object there is no such property. On the other hand there is not such function for the tablebox object.

I made a small test. I created a form with a table box and a button. Set this property of the tablebox to true. Put a code in the onPush trigger of the button - "message('%1', CurrForm.INLINEEDITING)". When I opened the form and pushed the button the system showed me "No" in a message.

Does anybody know when this function can be useful and how it works?
My NAV version is 4 SP3.

Comments

  • garakgarak Member Posts: 3,263
    take a look at form 25 "Customer Ledger Entries" -> TableBox

    With this property it's possible to change some fields, which have property editable = yes, in the TableBox by pressing F2. The fields which are editable are, for example, "Due Date", "Pmt. Discount Date" or "On Hold"

    The effect of setting this property to Yes is that by default, no editing will be allowed when the form is opened. The user must click on an active editable control, press F2 when an editable control is in focus, or choose to insert a new record to begin editing.

    The setting of this property can be changed dynamically by using the INLINEEDITING function.

    regards
    Do you make it right, it works too!
  • AlterantAlterant Member Posts: 19
    garak wrote:
    The setting of this property can be changed dynamically by using the INLINEEDITING function.
    And how I can do this for the form with one table box? For the form with two table boxes?
  • David_SingletonDavid_Singleton Member Posts: 5,479
    garak wrote:
    ...The effect of setting this property to Yes is that by default, no editing will be allowed when the form is opened. ...

    Just a minor correction and maybe answering Alternat's question above.

    Inline editing relates to the TableBox, NOT THE FORM.
    David Singleton
  • garakgarak Member Posts: 3,263
    Yes, the table box ;-)
    Do you make it right, it works too!
  • AlterantAlterant Member Posts: 19
    Inline editing relates to the TableBox, NOT THE FORM.
    But if you open symbol menu you will not find this function for table box. You will find it under CurrForm -> Properties.

    If the property relates to tableboxes why this function is under CurrForm object in Symbol Menu?
  • vaprogvaprog Member Posts: 1,141
    I had been looking for information concerning the INLINEEDITING function, but since I could not find anything about it, I decided to post my findings.
    This posting is not about the effects of the property. There is plenty of information about that. This posting is instead about how to use the INLINEEDITING function (programmable property, to be accurate) to manipulate the state of the property which is to be found on the TableBox or MatrixBox control. The programmable version can be accessed as <FormVariable>.INLINEEDITING or, from within the form, as CurrForm.INLINEEDITING.

    The property can be set only before the form is drawn, i.e. before you called RUN or RUNMODAL from the FormVariable or from the OnInit or OnOpenForm triggers from within. When called later you get an error. When set in OnOpenForm, the value you set can be queried, but the state is not reflected in the behavior of the tablebox control. When set from the OnInit Trigger, it takes effect, but I could no longer access any controls programmatically, i.e. any expression of the Form CurrForm.<ControlName>.<Property of function> cause an error in the OnInit Trigger stating that the control cannot be accessed.
    Querying the property seems to return the state set before by you, rather than the control's current state. The queried value reflects what you set, even after an error occurred, stating that it is too late to change the property.
    Alterant wrote:
    If the property relates to tableboxes why this function is under CurrForm object in Symbol Menu?
    Who knows? but since there can only be one TableBox or MatrixBox per form, who cares?

    So, to sum things up:
    • Don't use CurrForm.INLINEEDITING to set the property. You cannot use it to query the designed state of the property.
    • <FormVariable>.INLINEEDITING can be used to set the property. You can use it to query what you set it to but there's no way to query the designed state of the property.

    My experiments have been conducted on a NAV 2009 R2 Classic Client.
Sign In or Register to comment.