Index: vhTest/Fake/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
===================================================================
diff -u -r64451 -r64457
--- vhTest/Fake/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml (.../ProductIdRecycleerder.cls.xml) (revision 64451)
+++ vhTest/Fake/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml (.../ProductIdRecycleerder.cls.xml) (revision 64457)
@@ -18,6 +18,12 @@
]]>
+
+ProductId:%String
+
+
+
Request:AXif.Dynamics.CalculatedProductIn.MessageParts.AxdEntityRequest
%String
Index: WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
===================================================================
diff -u -r64451 -r64457
--- WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml (.../ProductIdRecycleerder.cls.xml) (revision 64451)
+++ WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml (.../ProductIdRecycleerder.cls.xml) (revision 64457)
@@ -42,17 +42,19 @@
#dim LadeVariant As AXimpl.PM.enu.LadeVariant = ..LadeVariantBepaler.Bepaal("", Request.Attribute)
If (LadeVariant = ##class(AXimpl.PM.enu.LadeVariant).LBX()) {
- // implementatie
+ Set ProductId = ..GeefEerstvolgendeVrijeProductId(##class(AXimpl.PM.enu.LadeVariant).LBX())
} ElseIf (LadeVariant = ##class(AXimpl.PM.enu.LadeVariant).MVX()) {
-
+ Set ProductId = ..GeefEerstvolgendeVrijeProductId(##class(AXimpl.PM.enu.LadeVariant).MVX())
} ElseIf (LadeVariant = ##class(AXimpl.PM.enu.LadeVariant).TAX()) {
-
+ Set ProductId = ..GeefEerstvolgendeVrijeProductId(##class(AXimpl.PM.enu.LadeVariant).TAX())
} ElseIf (LadeVariant = ##class(AXimpl.PM.enu.LadeVariant).TBX()) {
-
+ Set ProductId = ..GeefEerstvolgendeVrijeProductId(##class(AXimpl.PM.enu.LadeVariant).TBX())
} Else {
Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.UnimplementedException).%New("Onbekende LadeVariant voorzien: '"_LadeVariant_"' in de door AX aangeleverde Kenmerken. De range voor recyclage van een ProductId kan niet bepaald worden."))
}
+ // Check op beschikbaarheden ranges => nog genoeg vrij of uitbreiding nodig? => Logging en eventueel mail naar ICT_Meldingen
+
Quit ProductId
]]>
@@ -133,6 +135,83 @@
]]>
+
+
+Wordt aangeroepen vanuit WSimpl.AX.CalculatedProduct.RequestConverter om op het einde van de rit het ProductId weer vrij te geven.
+ProductId:%String
+ ProductId niet gevonden in range om weer vrij te geven!
+ } Else {
+ Set ^ProductIdRecycle(LadeVariantVanRangeVolgensProductId,ProductId) = 0
+ }
+]]>
+
+
+
+ProductId:%String
+1
+AXimpl.PM.enu.LadeVariant
+ Voor ProductIdRecycleerder gezocht ProductId niet gevonden in de ProductId-ranges die ervoor gereserveerd zijn.
+ }
+
+ Quit LadeVariant
+]]>
+
+
+
+LadeVariant:AXimpl.PM.enu.LadeVariant
+1
+%String
+
+
+
LadeVariant:AXimpl.PM.enu.LadeVariant
1
Index: WSimpl/AX/CalculatedProduct/RequestConverter.cls.xml
===================================================================
diff -u -r58671 -r64457
--- WSimpl/AX/CalculatedProduct/RequestConverter.cls.xml (.../RequestConverter.cls.xml) (revision 58671)
+++ WSimpl/AX/CalculatedProduct/RequestConverter.cls.xml (.../RequestConverter.cls.xml) (revision 64457)
@@ -72,6 +72,7 @@
#dim Product As DOM.PM.Product = ""
#dim ProductId As %String = ..GeefAttributeValueTxtVolgensAttributeName(Request.Attribute, "AdminProductNummer")
+ #dim IsSalesPriceBOMAttrVsAdminProdNr As %Boolean = (Request.AttrVsAdminProdNr = "SalesPriceBOM")
Try {
If (##class(DOM.common.impl.ProjectSettingsAPI).%New().IsActiefAttrVsAdminProdNrInBomBol() && (..IsLade(Request))) {
@@ -98,6 +99,10 @@
Do ConfigVariant.Attribute.Insert(..GeefAxAttribute("AdminProductNummer", Product.GeefPRNr()))
}
+ If IsSalesPriceBOMAttrVsAdminProdNr {
+ // TODO: VRIJGAVE ^ProductIdRecycle via ProductIdRecycleerder !!!
+ }
+
Quit ConfigVariant
]]>
Index: vhTest/Mock/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
===================================================================
diff -u -r64451 -r64457
--- vhTest/Mock/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml (.../ProductIdRecycleerder.cls.xml) (revision 64451)
+++ vhTest/Mock/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml (.../ProductIdRecycleerder.cls.xml) (revision 64457)
@@ -26,6 +26,12 @@
]]>
+
+ProductId:%String
+
+
+
Request:AXif.Dynamics.CalculatedProductIn.MessageParts.AxdEntityRequest
%String