eclipse-aaspe / package-explorer

AASX Package Explorer
Other
64 stars 19 forks source link

[BUG] Can't copy standard submodels #226

Closed iosb-ina-mr closed 4 months ago

iosb-ina-mr commented 5 months ago

Describe the bug The current version (v2024-06-10) of the Package Explore is not able to copy standard submodels (neither HierarchicalStructures nor DigitalNameplate work) from an auxiliary AASX file. The previous release v2024-05-08 does copy over the submodels correctly.

To Reproduce Steps to reproduce the behavior:

  1. Open the PE and create an empty AAS
  2. Open either HierarchicalStructures or DigitalNameplate as auxiliary AASX.
  3. Try to add the submodel from the auxiliary AASX.
  4. See error

Error Loading new AASX from: C:\...\IDTA 02006-2-0_Template_Digital Nameplate.aasx as auxiliary True .. AASX C:\...\IDTA 02006-2-0_Template_Digital Nameplate.aasx loaded. Error: Unhandled exception in AasxPackageExplorer v1.0.0.0: Value cannot be null. (Parameter 'source') Value cannot be null. (Parameter 'source') at at System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument) at System.Linq.Enumerable.Where[TSource](IEnumerable`1 source, Func`2 predicate) at Extensions.ExtendEnvironment.FindSubmodel(Environment environment, IReference submodelReference) in D:\a\package-explorer\package-explorer\src\AasxCsharpLibrary\Extensions\ExtendEnvironment.cs:line 500 at Extensions.ExtendEnvironment.CopySubmodelRefAndCD(Environment environment, Environment srcEnv, IReference srcSubRef, Boolean copySubmodel, Boolean copyCD, Boolean shallowCopy) in D:\a\package-explorer\package-explorer\src\AasxCsharpLibrary\Extensions\ExtendEnvironment.cs:line 1057 at AasxPackageLogic.DispEditHelperEntities.<>c__DisplayClass8_0.<DisplayOrEditAasEntityAas>b__6(Int32 buttonNdx, AasxMenuActionTicket ticket) in D:\a\package-explorer\package-explorer\src\AasxPackageLogic\DispEditHelperEntities.cs:line 1409 at AasxPackageLogic.DispEditHelperBasics.<>c__DisplayClass21_2.<AddActionPanel>b__2(Object o) in D:\a\package-explorer\package-explorer\src\AasxPackageLogic\DispEditHelperBasics.cs:line 727 at AnyUi.AnyUiDisplayContextWpf.<>c__DisplayClass25_8.<<InitRenderRecs>b__45>d.MoveNext() in D:\a\package-explorer\package-explorer\src\AasxWpfControlLibrary\AnyUiWpf.cs:line 1118 --- End of stack trace from previous location --- at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler). Stacktrace: at System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument) at System.Linq.Enumerable.Where[TSource](IEnumerable`1 source, Func`2 predicate) at Extensions.ExtendEnvironment.FindSubmodel(Environment environment, IReference submodelReference) in D:\a\package-explorer\package-explorer\src\AasxCsharpLibrary\Extensions\ExtendEnvironment.cs:line 500 at Extensions.ExtendEnvironment.CopySubmodelRefAndCD(Environment environment, Environment srcEnv, IReference srcSubRef, Boolean copySubmodel, Boolean copyCD, Boolean shallowCopy) in D:\a\package-explorer\package-explorer\src\AasxCsharpLibrary\Extensions\ExtendEnvironment.cs:line 1057 at AasxPackageLogic.DispEditHelperEntities.<>c__DisplayClass8_0.<DisplayOrEditAasEntityAas>b__6(Int32 buttonNdx, AasxMenuActionTicket ticket) in D:\a\package-explorer\package-explorer\src\AasxPackageLogic\DispEditHelperEntities.cs:line 1409 at AasxPackageLogic.DispEditHelperBasics.<>c__DisplayClass21_2.<AddActionPanel>b__2(Object o) in D:\a\package-explorer\package-explorer\src\AasxPackageLogic\DispEditHelperBasics.cs:line 727 at AnyUi.AnyUiDisplayContextWpf.<>c__DisplayClass25_8.<<InitRenderRecs>b__45>d.MoveNext() in D:\a\package-explorer\package-explorer\src\AasxWpfControlLibrary\AnyUiWpf.cs:line 1118 --- End of stack trace from previous location --- at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

Expected behavior The submodels should be copied to the edited AASX.

Desktop:

juileetikekar commented 4 months ago

Hi @iosb-ina-mr,

Thank you for rising the issue!

The issue has been fixed.

iosb-ina-mr commented 4 months ago

Hi @juileetikekar, thank you for having fixed the issue.