EpiUltraGrid UD103A

Hi,

I have a UD103Form and I have my own EpiUltraGrid bind to the UD103A dataview. Each time I make a change on a row, if I click on another row, an update was triggered. Is it possible to have an update only when the user click on the save button???

Regards
Al

In my understanding, there is an event (EpiRowChanging) that fires on row changing forcing an update.

Possible workaround if nothing else works, create an updatable BAQ allowing multiple row update. Then you could create a custom BAQDataView and hook it to your grid. Or, you could use an embeded dashboard.

Where I can find the definition of this event???

In the Transaction object of UD103.

Thanks but after looking at it, there is nothing I can do to stop the “Transaction.Update” between line scrolling.

Hi,

I have a UD103 customization with an EpiUltragrid binded to the EpiDataView UD103A. The first column in my view is a CheckBox. If the user click on the checkbox of a row, the checkbox become checked/unchecked, when the user click in the checkbox of another row, an update are triggered and the state of the checkbox of the updated row was pushed to the database and the checkbox of the new selected row become checked/unchecked. Most of the time, when the user click on a checkbox at the bottom of the visible area of the grid, the state of the checkbox change, if he decide to scroll down and click on the checkbox of a new visible row, and update are triggered so the state of the previous row are save but the state of the new checkbox was lost.

Regards
Al

Any row that you toggle the check box must become the row being edited. Leaving that row by selecting another (or setting focus to some other control not in the grid) should force the update. It should not depend on whether the row being edited has scrolled out of view.

Does it only happen when scrolling with the mouse wheel? It could be “rotating” through the available selections for the checkbox in focus. As a test, try having the user scroll using the scroll bars instead of the mouse wheel.

A work around would be to have the user hit the tab key after they’ve checked of a box.

Hi Calvin.

The pattern where I can reproduce easily the issue is the following:

  1. I click on the checkbox of the row in the middle of the grid, the checkbox become checked/unchecked
  2. I click on the checkbox of the row before the last visible one
  3. The row on step #1 is saved in the database but the checkbox of the row on step #2 doesn’t change

This pattern worked perfectly:

  1. I click on the checkbox of the row in the middle of the grid, the checkbox become checked/unchecked
  2. I click on the checkbox of the next row
  3. The row on step #1 is saved in the database and the checkbox of the row on step #2 change perfectly

Regards
Al

You already have the same topic on a different thread.

Merging

Strange, I just did a reply…

Is this a child table?

In your first example (where the second box doesn’t toggle), does the second box have the same parent record (row of the parent table)?

If not, it may have something to do with the fact that when the second row is selected, the UI momentarily updates for fields related to the parent table, then switches back focus to the grid with the UD103A.

For example, the OrderRel is a child of OrderDtl. On the Order Entry screen, the Release tab doesn’t let you see all the releases for all the lines. It only shows you the releases for the currently selected line. I assumed this is just for clarity - so you’re only presented with a limited set of releases for one particular line. But maybe it also has to do with how the related dataviews are managed in the UI.

That’s just a theory. But something you could easily test.

The data come from the UD103A table. All rows in the grid have the same parent in UD103 table.

Experimenting with the UD103 Entry form, I think I can repeat it.

ud checkbox

The last visible row is not entirely visible. And when first clicked, the grid scrolls up a bit. Then the entire field’s contents are “selected” - like when you enter focus on a text or number cell.

I extended the window just a hair, so that a bit of the next row was visible, and it doesn’t do it.

ud checkbox2

Good news, do you think it’s possible to fix this?

This appears to be a UI glitch. And probably would do the same on any form.

So if you fix it on one form, users will expect that functionality to exist everywhere.

But if you really want to do it, you could make a customization with events on the grid.

Looks like you’d need to do something on either the BeforeRowRegionScroll(), or AfterRowRegionScroll().

BTW - The problem doesn’t seem to exist when the grid has to scroll horizontally. It does scroll to get the whole cell visible, but the initial click does toggle the checkbox.

test3