$title 'Test projection operator when loading data from embedded code' (EMBGMS03,SEQ=927) $onText Contributor: Michael Bussieck, January 2023 $offText Parameter ud1dataUniverse; Set d1Want / i1 / d2Want / j1, j2 / d3Want / k1, k3 / ud1d1, ud1d2, ud1d3; $macro checkIfAinB(a,b,Error) Set Error; Error(a) = not b(a); abort$card(Error) Error; * Get set elements from specified dim of the parameter but not the parameter itself $offECImplicitLoad $onEmbeddedCode GAMS: parameter ud1dataUniverse / i1.j1.k1 11.9, i1.j2.k3 9.11 /; $offEmbeddedCode ud1d1 noDomMatch.gms Parameter dataUniverse(*,*,*); Set d1(*), d2(*), d3(*); $onEmbeddedCode GAMS: parameter dataUniverse / i1.j1.k1 11.9, i1.j2.k3 9.11 /; $offEmbeddedCode d1 noParameter.gms Parameter dataUniverse(*,*,*); Parameter d1(*), d2(*), d3(*); $onEmbeddedCode GAMS: parameter dataUniverse / i1.j1.k1 11.9, i1.j2.k3 9.11 /; $offEmbeddedCode d1 wrongDim.gms Parameter dataUniverse(*,*,*); Set d1(*,*), d2(*,*,*), d3(*,*,*); $onEmbeddedCode GAMS: parameter dataUniverse / i1.j1.k1 11.9, i1.j2.k3 9.11 /; $offEmbeddedCode d1 wrongDim.gms Parameter dataUniverse; Set d1, d2, d3; $onEmbeddedCode GAMS: parameter dataUniverse / i1.j1.k1 11.9, i1.j2.k3 9.11 /; $offEmbeddedCode d1