FORUM CTRLX AUTOMATION
ctrlX World Partner Apps for ctrlX AUTOMATION
Dear Community User! We have started the migration process.
This community is now in READ ONLY mode.
Read more: Important
information on the platform change.
10-12-2023 12:04 AM
Hello,
Is it possible to recover source code of a custom widget used in an imported WebIQ project? In the case that a project was shared without the source packages, and a change to a package is required, this would be necessary.
Solved! Go to Solution.
10-12-2023 08:39 AM
Installing a package copies the package files into the project. You can try to recover this, but this is not officially supported.
Files installed with packages are logged in .webiq/pkg-index.json.gz
10-12-2023 04:34 PM
Ok, so the package would need to be manually reassembled from the source files listed in the pkg-index.json? This doesn't seem practical. Really the packages need to be shipped with the project. Maybe a good idea as an option for future releases.
10-13-2023 08:15 AM
You wrote: "In the case that a project was shared without the source packages, and a change to a package is required, this would be necessary."
So trying to recover the package from the project sounds like a workaround to me. The solution would probably be to obtain the corresponding package and the problem should be solved.
Recovering package files from a project is not a valid use case for us. However, simply parsing the JSON file and copying the files should be a very short script anyway so there is an option for this edge case. I've never before heard of someone requesting this though.
Also, by not being able to configure the widget without having the package installed in WebIQ Designer you can develop a custom widget for a customer who can use it, but cannot change the configuration of the widget so this would have to be done by you, unless you ship the package to him as well. Sometimes this is a valid use-case where you want the customer to be able to modify the HMI you created for HIM to a certain point, but not for some specific custom widgets because the customer might break something by changing parameters of your custom widget.