microsoft / powercat-creator-kit

This toolkit helps create well-designed Power App experiences on the web & mobile. It contains a component library; PCF controls and other utilities that increase developer productivity.
MIT License
322 stars 55 forks source link

[Creator Starter Kit] BUG: Dialog component expecting record value #463

Closed Mariah-Howard closed 2 months ago

Mariah-Howard commented 6 months ago

It appears that an update was pushed late yesterday, as this worked up until 5pm EST yesterday afternoon.

When submitting a form via a Dialog component, taken from the Power CAT Component library, the following error is received: “Expected Record value.”

Using a standard button works but doesn’t via a Dialog.

Rolling versions back and forward doesn’t resolve the issue.

This is impacting apps across multiple environments and tenants.

Steps to reproduce the behavior:

  1. Add a dialog component
  2. Add submitform(formx) to one of the buttons

thumbnail_image001

AB#3271

eric-duncan-pdx commented 6 months ago

I'm seeing the same failure with the Panel component. No formula I'm attempting to use in the OnButtonSelect appears to be working due to that same error. Existing apps in production that utilize panels don't appear to have this issue (at least not yet!)

Jenefer-Monroe commented 6 months ago

Impacts panel and dialog control and also impacts the CoE Starter Kit.

There is a repro with the reference app itself.

  1. Open Creator kit reference app in edit
  2. Disable this setting (per the fix to the sorting bug), save publish and reboot the app image

NOW WE SEE THE BUG

image

vivekmurli commented 6 months ago

@denise-msft @Jenefer-Monroe Even we're facing the same issue since last few days. Any ETA on the resolution?

Jenefer-Monroe commented 6 months ago

The broader team is working on an update to Creator Kit which we expect early to mid next week at which point I will use it to update the apps in the kit before we ship the June release. CoE side tracking bug: https://github.com/microsoft/coe-starter-kit/issues/8350

DavesTechTips commented 6 months ago

Hey everyone. Do we know why this happened? As far as I can see the last update to the panel component was July 2023? Was this a change on the component platform?

jean-goyat commented 5 months ago

The broader team is working on an update to Creator Kit which we expect early to mid next week at which point I will use it to update the apps in the kit before we ship the June release. CoE side tracking bug: microsoft/coe-starter-kit#8350

The Creator Kit version that just got released resolved the issue for us! Thank you!

Danielx64 commented 5 months ago

Hi,

We use our own custom Dialog that is based on the Creator Kit version with some changes to fit our requirements. Can you please advise what changes were made to the Dialog component so that we can apply the same fix when this issue hits us?

@Jenefer-Monroe

vivekmurli commented 5 months ago

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Danielx64 commented 5 months ago

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Just a shot in the dark, did you open the affected canvas app in the editor and update the components as needed?

vivekmurli commented 5 months ago

@Danielx64 Yes we did , and it now fixed the original issue , However all the code written in those dialogs have disappeared. Are you facing the same problem?

The new dialog looks like below , no properties for On Button and Close select as before , We need to go to the advanced tab

image

@Jenefer-Monroe why did the code in the dialogs , close and save buttons disappear? Also why was it not mentioned in any of the bug posts on this topic?

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Just a shot in the dark, did you open the affected canvas app in the editor and update the components as needed?

Danielx64 commented 5 months ago

@Danielx64 Yes we did , and it now fixed the original issue , However all the code written in those dialogs have disappeared. Are you facing the same problem?

The new dialog looks like below , no properties for On Button and Close select as before , We need to go to the advanced tab

image

@Jenefer-Monroe why did the code in the dialogs , close and save buttons disappear? Also why was it not mentioned in any of the bug posts on this topic?

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Just a shot in the dark, did you open the affected canvas app in the editor and update the components as needed?

As I'm using a custom component library I haven't updated yet so I can't confirm the behaviour.

I'm waiting to find out what was changed so I can make the changes to my version and of course go to each app and update these.

vivekmurli commented 5 months ago

@Danielx64 Yes we did , and it now fixed the original issue , However all the code written in those dialogs have disappeared. Are you facing the same problem? The new dialog looks like below , no properties for On Button and Close select as before , We need to go to the advanced tab image @Jenefer-Monroe why did the code in the dialogs , close and save buttons disappear? Also why was it not mentioned in any of the bug posts on this topic?

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Just a shot in the dark, did you open the affected canvas app in the editor and update the components as needed?

As I'm using a custom component library I haven't updated yet so I can't confirm the behaviour.

I'm waiting to find out what was changed so I can make the changes to my version and of course go to each app and update these.

Do you mind creating a copy of any of your app(s) containing dialogs? , Update the component on the copy of the app and confirm if you see the code in those dialogs? That way we would be able to confirm if its a bug in the newer version and report to the team accordingly?

Danielx64 commented 5 months ago

@Danielx64 Yes we did , and it now fixed the original issue , However all the code written in those dialogs have disappeared. Are you facing the same problem? The new dialog looks like below , no properties for On Button and Close select as before , We need to go to the advanced tab image @Jenefer-Monroe why did the code in the dialogs , close and save buttons disappear? Also why was it not mentioned in any of the bug posts on this topic?

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Just a shot in the dark, did you open the affected canvas app in the editor and update the components as needed?

As I'm using a custom component library I haven't updated yet so I can't confirm the behaviour.

I'm waiting to find out what was changed so I can make the changes to my version and of course go to each app and update these.

Do you mind creating a copy of any of your app(s) containing dialogs? , Update the component on the copy of the app and confirm if you see the code in those dialogs? That way we would be able to confirm if its a bug in the newer version and report to the team accordingly?

I'm happy to try that, it will need to wait till Monday at the very least as it's 7 PM Friday evening here (this is my personal GitHub account).

vivekmurli commented 5 months ago

@Danielx64 Yes we did , and it now fixed the original issue , However all the code written in those dialogs have disappeared. Are you facing the same problem? The new dialog looks like below , no properties for On Button and Close select as before , We need to go to the advanced tab image @Jenefer-Monroe why did the code in the dialogs , close and save buttons disappear? Also why was it not mentioned in any of the bug posts on this topic?

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Just a shot in the dark, did you open the affected canvas app in the editor and update the components as needed?

As I'm using a custom component library I haven't updated yet so I can't confirm the behaviour. I'm waiting to find out what was changed so I can make the changes to my version and of course go to each app and update these.

Do you mind creating a copy of any of your app(s) containing dialogs? , Update the component on the copy of the app and confirm if you see the code in those dialogs? That way we would be able to confirm if its a bug in the newer version and report to the team accordingly?

I'm happy to try that, it will need to wait till Monday at the very least as it's 7 PM Friday evening here (this is my personal GitHub account).

Sure no problem , let me know how it goes

Danielx64 commented 5 months ago

@Danielx64 Yes we did , and it now fixed the original issue , However all the code written in those dialogs have disappeared. Are you facing the same problem? The new dialog looks like below , no properties for On Button and Close select as before , We need to go to the advanced tab image @Jenefer-Monroe why did the code in the dialogs , close and save buttons disappear? Also why was it not mentioned in any of the bug posts on this topic?

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Just a shot in the dark, did you open the affected canvas app in the editor and update the components as needed?

As I'm using a custom component library I haven't updated yet so I can't confirm the behaviour. I'm waiting to find out what was changed so I can make the changes to my version and of course go to each app and update these.

Do you mind creating a copy of any of your app(s) containing dialogs? , Update the component on the copy of the app and confirm if you see the code in those dialogs? That way we would be able to confirm if its a bug in the newer version and report to the team accordingly?

I'm happy to try that, it will need to wait till Monday at the very least as it's 7 PM Friday evening here (this is my personal GitHub account).

Sure no problem , let me know how it goes

Well you are in luck, I forgot that I had this installed in my test O365 tenant. So i created a dunny canvas app with the dialog, put in a simple set command and saved it.

Then I updated the creator kit using the official zip (as I have the manage version installed) and I can reproduce the issue that you mentioned.

vivekmurli commented 5 months ago

@Danielx64 Yes we did , and it now fixed the original issue , However all the code written in those dialogs have disappeared. Are you facing the same problem? The new dialog looks like below , no properties for On Button and Close select as before , We need to go to the advanced tab image @Jenefer-Monroe why did the code in the dialogs , close and save buttons disappear? Also why was it not mentioned in any of the bug posts on this topic?

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Just a shot in the dark, did you open the affected canvas app in the editor and update the components as needed?

As I'm using a custom component library I haven't updated yet so I can't confirm the behaviour. I'm waiting to find out what was changed so I can make the changes to my version and of course go to each app and update these.

Do you mind creating a copy of any of your app(s) containing dialogs? , Update the component on the copy of the app and confirm if you see the code in those dialogs? That way we would be able to confirm if its a bug in the newer version and report to the team accordingly?

I'm happy to try that, it will need to wait till Monday at the very least as it's 7 PM Friday evening here (this is my personal GitHub account).

Sure no problem , let me know how it goes

Well you are in luck, I forgot that I had this installed in my test O365 tenant. So i created a dunny canvas app with the dialog, put in a simple set command and saved it.

Then I updated the creator kit using the official zip (as I have the manage version installed) and I can reproduce the issue that you mentioned.

@Danielx64 Thank you for checking , appreciate it.. This is a serious issue as we're losing code.

@Jenefer-Monroe @denise-msft This is serious , please raise a bug for the issue

Danielx64 commented 5 months ago

@Danielx64 Yes we did , and it now fixed the original issue , However all the code written in those dialogs have disappeared. Are you facing the same problem? The new dialog looks like below , no properties for On Button and Close select as before , We need to go to the advanced tab image @Jenefer-Monroe why did the code in the dialogs , close and save buttons disappear? Also why was it not mentioned in any of the bug posts on this topic?

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Just a shot in the dark, did you open the affected canvas app in the editor and update the components as needed?

As I'm using a custom component library I haven't updated yet so I can't confirm the behaviour. I'm waiting to find out what was changed so I can make the changes to my version and of course go to each app and update these.

Do you mind creating a copy of any of your app(s) containing dialogs? , Update the component on the copy of the app and confirm if you see the code in those dialogs? That way we would be able to confirm if its a bug in the newer version and report to the team accordingly?

I'm happy to try that, it will need to wait till Monday at the very least as it's 7 PM Friday evening here (this is my personal GitHub account).

Sure no problem , let me know how it goes

Well you are in luck, I forgot that I had this installed in my test O365 tenant. So i created a dunny canvas app with the dialog, put in a simple set command and saved it.

Then I updated the creator kit using the official zip (as I have the manage version installed) and I can reproduce the issue that you mentioned.

@Danielx64 Thank you for checking , appreciate it.. This is a serious issue as we're losing code.

@Jenefer-Monroe @denise-msft This is serious , please raise a bug for the issue

You're welcome

I'm going to be in a world of pain, I have about 60+ canvas apps that will need to be updated, some will be simple but others I will need to copy and paste code. Not looking forward to it. Worse is that one of my colleagues has gone away for 2 weeks so it's not like I have time to worry about stuff like this.

vivekmurli commented 5 months ago

@Danielx64 Yes we did , and it now fixed the original issue , However all the code written in those dialogs have disappeared. Are you facing the same problem? The new dialog looks like below , no properties for On Button and Close select as before , We need to go to the advanced tab image @Jenefer-Monroe why did the code in the dialogs , close and save buttons disappear? Also why was it not mentioned in any of the bug posts on this topic?

@Jenefer-Monroe , we updated the creator kit to the latest version and the issue persists. Also as per your comments the issue should have been resolved by now. This is impacting our apps. Please provide an ETA or a workaround for the issue.

Just a shot in the dark, did you open the affected canvas app in the editor and update the components as needed?

As I'm using a custom component library I haven't updated yet so I can't confirm the behaviour. I'm waiting to find out what was changed so I can make the changes to my version and of course go to each app and update these.

Do you mind creating a copy of any of your app(s) containing dialogs? , Update the component on the copy of the app and confirm if you see the code in those dialogs? That way we would be able to confirm if its a bug in the newer version and report to the team accordingly?

I'm happy to try that, it will need to wait till Monday at the very least as it's 7 PM Friday evening here (this is my personal GitHub account).

Sure no problem , let me know how it goes

Well you are in luck, I forgot that I had this installed in my test O365 tenant. So i created a dunny canvas app with the dialog, put in a simple set command and saved it. Then I updated the creator kit using the official zip (as I have the manage version installed) and I can reproduce the issue that you mentioned.

@Danielx64 Thank you for checking , appreciate it.. This is a serious issue as we're losing code. @Jenefer-Monroe @denise-msft This is serious , please raise a bug for the issue

You're welcome

I'm going to be in a world of pain, I have about 60+ canvas apps that will need to be updated, some will be simple but others I will need to copy and paste code. Not looking forward to it. Worse is that one of my colleagues has gone away for 2 weeks so it's not like I have time to worry about stuff like this.

Even I have to go through the same rut , imagine readding all the code again to the dialogs is going to be a pain.

denise-msft commented 5 months ago

Thank you for reporting this and detailed validation efforts. We're looking into this now.

Just as a reminder, the library components are marked as experimental and we do not recommend using them in production applications. The implementation of OnButtonSelect is also using an experimental product feature that may be causing the issue we're seeing. We're following up with the respective internal teams and will provide more updates as soon as possible.

Thank you so much for your patience!

Danielx64 commented 5 months ago

Thank you for reporting this and detailed validation efforts. We're looking into this now.

Just as a reminder, the library components are marked as experimental and we do not recommend using them in production applications. The implementation of OnButtonSelect is also using an experimental product feature that may be causing the issue we're seeing. We're following up with the respective internal teams and will provide more updates as soon as possible.

Thank you so much for your patience!

Thank you for the update and reminder that this is experimental. I kind of feel silly in using this in production but it's something that really needed and much better than what I had before (wasn't even responsive).

denise-msft commented 5 months ago

Unfortunately, the fix for this issue is a breaking change for anyone updating the panel/dialog/expand menu.

An update of existing apps using these components will remove all Power Fx expressions associated with the ok/cancel buttons. We have exhausted all options to the best of our ability and are forced to ask users to manually update their formulas when updating to the latest release in order to resolve the fix.

The recommended fix is to:

  1. Upgrade the Creator Kit by installing the latest release (May 2024)
  2. Open the canvas app or custom page using the Dialog, Panel, or ExpandMenu component
  3. Copy the formulas on the respective Event type properties (e.g., OnButtonSelect), which can be found on the Advanced tab of the right pane of the editor image
  4. Optionally paste the formulas into a notepad for temporary keeping
  5. Update the components - click the update button in the message bar on the top of the studio, or in the insert tab click the refresh icon image
  6. Apply the update
  7. Paste the formulas back into the respective Event type properties

We understand this may cause significant inconvenience. Due to platform limitations related to the fix required and the fact that this implementation is experimental itself using experimental features on the platform, this was our only option in our power to resolve the component issue. We appreciate your understanding and are looking for more viable ways (including discussions with the product team) to provide a more robust dialog component in the future.

Danielx64 commented 5 months ago

Unfortunately, the fix for this issue is a breaking change for anyone updating the panel/dialog/expand menu.

An update of existing apps using these components will remove all Power Fx expressions associated with the ok/cancel buttons. We have exhausted all options to the best of our ability and are forced to ask users to manually update their formulas when updating to the latest release in order to resolve the fix.

The recommended fix is to:

  1. Upgrade the Creator Kit by installing the latest release (May 2024)
  2. Open the canvas app or custom page using the Dialog, Panel, or ExpandMenu component
  3. Copy the formulas on the respective Event type properties (e.g., OnButtonSelect), which can be found on the Advanced tab of the right pane of the editor image
  4. Optionally paste the formulas into a notepad for temporary keeping
  5. Update the components - click the update button in the message bar on the top of the studio, or in the insert tab click the refresh icon image
  6. Apply the update
  7. Paste the formulas back into the respective Event type properties

We understand this may cause significant inconvenience. Due to platform limitations related to the fix required and the fact that this implementation is experimental itself using experimental features on the platform, this was our only option in our power to resolve the component issue. We appreciate your understanding and are looking for more viable ways (including discussions with the product team) to provide a more robust dialog component in the future.

Thank you for the response. Something else, I have copied the component library as I have a need for several different dialogue boxes with different controls in it (like toggle switch).

Can you please advise what changes you made to your components so that I can apply those to my version? For example did you change the output type?

vivekmurli commented 5 months ago

@denise-msft ,

Thank you for getting back. What is the point of using PowerCAT components if they cannot be used in the production environment , it defeats the purpose of using the library? Also what changes were made to the components that caused them to break and why were these changes done in the first place that would make these components obsolete? Also say if we have 60 dialogs , is it not illogical and rather time consuming to copy all of the code and paste it several times?

I am sure several users world over might be facing this problem and we cannot live with the problem , Can you not rollback the controls to the state they were in and release the same as the latest version? As far as the reliability of the library is concerned what is the guarantee that other controls won't fail?. In such a situation do you expect that one keeps copying code from a notepad and paste it to the respective controls again?

Please let me know how can we escalate the issue to the topmost level so that the version is rolled back to the stable and working one.

denise-msft commented 5 months ago

@vivekmurli thank you for your valuable feedback. Completely understand the concern and we are very sorry for the inconvenience.

The product team is further investigating potential solutions due to the impact reported. I will keep this thread updated as soon as we get more information. Until we have a definite answer, if the workaround to replace formulas manually does not work for you then please do not make any changes yet (including importing the latest release).

Thank you very much for your patience.

Just to clarify, this recommendation to not use in production only applies to experimental and preview components. Components that are marked as 'shipped' in the components overview page are considered safe for production. Shipped components are validated and built on the PCF framework, as opposed to the canvas library components which are using experimental features. If this experimental status was not clear in the documentation page, please let me know so we can adjust accordingly.

Danielx64 commented 5 months ago

@denise-msft will there be a stable dialog component in the components library? Having one in pcf will give me a few issues as I forked from the original one to add other things like toggle and in one a pdf viewer.

vivekmurli commented 5 months ago

@denise-msft , my question to you is why would your team develop something that doesn't work plus why is the code getting deleted... We need a root cause for this... If you're not able to help please escalate. I don't want you to conveniently tell us that the update broke the functionality. Also what is the problem rolling back the components to the previously working version? If not can you not update the component to retain the code?

denise-msft commented 5 months ago

A fix has been made by the product and will be available in version 2406.2 which will be in all regions by 24 June. Please do not update the Creator Kit components in your existing apps with affected canvas library components (dialog, panel, expandMenu) until you can confirm the studio version is available. Then you should be able to update the app without losing the formulas.

vivekmurli commented 5 months ago

@denise-msft Thank you for the update