Childs records still appear in ref table when delete childs from Parent table in offline mode

I am testing the app in offline mode. I have 3 tables:

Product

  • product_id |key
  • product_name

Product_sizes

  • product_id |ref table, [Is a part of?] = on
  • product_size_id | key
  • product_size

Order_detail

  • order_id |key
  • product_size_id | ref table
  • qty

All tables are related. So when I creat a new product and its related sizes, they appears available to select them in the “Order_detail” view using the [product_size_id].

Here is what happens…
When I go to “Product” => “Product_sizes” and delete a specific Size, instantaniously desappears and is not available to be selected in the “Order_detail”, even if the deletion/change is pending to sync because we are using the app Offline. All good, working as it should be.

BUT only and only if I delete the parent (Product), the childs (Product_sizes) are still available to be selected in the “Order_detail” and this is because the deletion is pending to be sync, once it get synced the deleted parent and all its childs desappear to be selected.

The ‘issue’ is while working offline. Not sure if there is a way, workaround or a nice idea to avoid this scenario? As always thanks for the great help, guys!

This sounds like a bug to me. I suggest engaging support@appsheet.com.

1 Like

I will send them an email, Thanks @Steve

1 Like

I just saw an easy case to check this. I am always in offline mode, and lets say I have the same 2 tables:

Product

  • product_id |key
  • product_name
  • active_product

Product_sizes

  • product_id |ref table, [Is a part of?] = on
  • product_size_id | key
  • product_size* vc_is_active_product | app formula = [product_id].[active_product]

So, in the “Product_sizes” table I have a virtual column [vc_is_active_product] to access the field [active_product] from Ref table “Product”.

That’s other thing that I can’t do it in offline mode. After I sync or when the app get synced in the background, that field automatically refreshed.