CalculatedProduct

Checkout Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Call voor vrijgave ProductId mag enkel in die Product een object is => indien niet, dan error geweest in try catch en errormessage uit Catch moet tot in AX geraken => gebeurde niet omwille van error in ProductId-vrijgave vlak voor returnen response

[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Na review: Extra testje voor RequestConverter indien NIET SalesPriceBOM

- Casing aangepast voor leesbaarheid => vermijden dat sommige mensen in 1e instantie denken dat het over een event gaat :-D

    • -3
    • +3
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- In GeefLadeVariantVanRangeVolgensProductId, ENKEL gebruikt door GeefProductIdVrij => Indien LadeVariant niet gevonden => Error-logging afgezwakt naar Info => Kan immers normale verwachte case zijn =>

=> indien range op was bij uitbesteding heeft ProductIdRecycleerder lege ProductId teruggegeven => ProductVolgensAxAttribuutBepaler heeft daarop een geheel nieuw Product gemaakt, waarvan de ID vervolgens in de RequestConverter wordt gebruikt om GeefProductIdVrij-call mee te doen

    • -2
    • +2
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Implementatie GeefProductIdVrij van ProductIdRecycleerder i.g.v. AttrVsAdminProdNr = SalesPriceBOM

- Bijhorende UnitTest

  1. … 2 more files in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Commentjes weggehaald en overgebleven comment verduidelijkt.

- Logging is hier in principe niet nodig, wegens al voldoende voorzien in helperklaskes

    • -11
    • +5
    ./ProductVolgensAxAttribuutBepaler.cls.xml
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Als ProductIdRecycleerder geen ProductId teruggeeft => ook volledig nieuw product maken => BOMBOL moet robust zijn en zoveel mogelijk AX dienen

- Al een 1e testje => ProductIdRecycleerder gaf ProductId => Product bestaat nog niet => Nieuw product volgens kenmerken

    • -2
    • +3
    ./ProductVolgensAxAttribuutBepaler.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Check op timestamp en indien nodig automatische vrijgave van ProductId's en indien nodig logging

- Bijhorende UnitTest

    • -2
    • +25
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Logging => ProductId vrijgegeven voor LadeVariant

    • -0
    • +3
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Logging => ProductId werd uitbesteed voor LadeVariant

    • -0
    • +2
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Werkte wel al, maar juist is juist => gaat enkel over 1e piece in de data

    • -1
    • +1
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Error-logging i.g.v. IsVrijeProductIdGevonden = false

    • -2
    • +5
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Check op LadeVariant gebeurt al in de LadeVariantBepaler, dus niet hier nog eens nodig

    • -3
    • +1
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- In de dedicated Global wordt in de data nu een 2e piece bijgehouden bij gebruik van een ProductId met daarin een Horolog

    • -3
    • +9
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 2 more files in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Klein refactorke => Logging bij schaarste afgezonderd naar private method

    • -19
    • +28
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Logging bij GeefLadeVariantVanRangeVolgensProductId

    • -4
    • +5
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Logging bij PersisteerRange

    • -0
    • +17
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Uitleg in comment ivm uitbreiding van ranges verduidelijkt

- Logger geïnjecteerd in constructor

- Logging uitgewerkt voor indien Schaarste in de range

- Bijhorende UnitTest

    • -10
    • +36
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 2 more files in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- CheckRangeOpBeschikbaarheidProductIds uitgebreid met 2e parameter => opgegeven komma delimited string van ProductIds checken => voor uitbreidingen

- Lokale BestaatProduct verwijderd => is door bovenstaande uitbreiding overbodig geworden

- 2 extra testjes hieromtrent

    • -31
    • +23
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 2 more files in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Test-range beetje uitgebreid voor meer diversiteit

- Extra testje erbij

    • -1
    • +1
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Console geïnjecteerd in constructor => voor testdoeleinden

- Parameters vervangen door Properties => makkelijk te wijzigen in TestCase

- CheckRangeOpBeschikbaarheidProductIds => Uitgebreid met check op aanwezigheid van ProductId's in ^KPRO

- 1e TestCase-opzet met al 2 testjes voor CheckRangeOpBeschikbaarheidProductIds

    • -32
    • +55
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 3 more files in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Verduidelijking in de verklarende comments over het gebruik van methods: CheckAlleRangesOpBeschikbaarheidProductIds, CheckRangeOpBeschikbaarheidProductIds en BestaatProduct

    • -3
    • +9
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- GlobalNaam is nu een klasse-parameter => makkelijk te wisselen in toekomstige TestCase

- Ranges van LadeTypes zijn nu allemaal Klasse-parameters => Opzichtiger met oog op uitbreidingen en eventueel ook makkelijker te manipuleren in UnitTesten

- In method GeefAantalVrijePlaatsenInRangeVolgensLadeVariant => Indien AantalNietGepersisteerdeProductIdsInRange > 0 => automatisch persisteren => geautomatiseerde werking bij uitbreiding van een range

- BestaatProduct toegevoegd om makkelijk los product te checken voor uitbreiding van een range => potentiële uitbreiding voor later => nieuwe range (meegegeven als parameter) checken die rapporteert welke ProductId's in die range nog vrij zijn

- Exceptie bij ongekende LadeVariant verwijderd => reeds voorzien in gebruikte LadeVariantBepaler

    • -14
    • +65
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Implementatie check op AantalVrijePlaatsenInRangeVolgensLadeVariant => na elke call => logging nog te vervolledigen

- Voor bovenstaande => implementatie GeefAantalVrijePlaatsenInRangeVolgensLadeVariant => stelt method call samen volgens LadeVariant => daarom methods zoals GeefLBXRange => LadeType in upper case gezet => is trouwens ook leesbaarder

- PersisteerRanges en PersisteerRange werken nu met parameter ForceerVolledigeReset met default False => Bij uitbreiding range enkel persistering van nieuwe, tenzij ForceerVolledigeReset = True, dan volledig nieuwe persistering (= alle switches op off = geen ProductId's in gebruik)

-

    • -24
    • +57
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- GeefTeRecyclerenProductId in ProductIdRecycleerder geeft nu eerstvolgend ProductId terug uit juiste range

- Implementatie GeefProductIdVrij

- In RequestConverter => al voorlopig check of het over juist case gaat en in dat geval voorziening in comment om GeefProductIdVrij op te roepen en ProductId na afloop weer vrij te geven

    • -4
    • +83
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 2 more files in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Eerste opzet => Opsplitsing volgens verschillende mogelijkheden voorzien => implementatie in comment (pseudocode) => doet dus momenteel nog niets

- Wel al injectie van dependancies, waaronder nieuwe ProductIdRecycleerder (zie vorige commit)

    • -1
    • +52
    ./ProductVolgensAxAttribuutBepaler.cls.xml
  1. … 1 more file in changeset.
[ICT-2090] [rvTVE] PM: Maatwerk: BOMBOL VHIP481: Soms opvragen zonder product aan te maken:

- Eerste opzet ProductIdRecycleerder => Geeft voorlopig altijd lege string terug als ProductId.

- Al ineens mockable gemaakt voor testing => TODO

- Wel al aantal voorzieningen:

=> 4 ranges (LBX, MVX, TAX en TBX) gedefinieerd als komma seperated strings => voorziet in flexibele aanpassing en uitbreiding van ranges

=> Controle of initieel ranges wel effectief vrij zijn (per LadeType of ineens alle ranges) => via BestaatProduct op ProductApi => OPGELET: Manueel via PuTTy in gang te zetten => Volgt misschien nog een deployklaske voor

=> Persistering van 4 ranges in dedicated Global ^ProductIdRecycle => Om bij te houden welke ProductId's op dat moment in gebruik zijn => OPGELET: Manueel via PuTTy in gang te zetten => Volgt misschien nog een deployklaske voor

=> Dit laatste kan ook gebruikt worden om, na indienstname, alle ProductId's (per LadeType of ineens alle ranges) weer volledig vrij te geven => USE WITH CAUTION

    • -0
    • +188
    ./ProductVolgensAxAttribuutBepaler/ProductIdRecycleerder.cls.xml
  1. … 2 more files in changeset.
[ICT-2296] Uitbreidingen in cache voor nieuwe mattenconfigurator

- Verdere uitbreidingen

[ICT-2246] [rvTVE] Correctie loggingniveau betreffende LeverAdressen op Klant en BezwaarGevonden in ProductUpdater:

- I.g.v. HeeftBezwaarVoorProductDelete wordt nu een Warning gelogd i.p.v. een Error

  1. … 1 more file in changeset.
[ICT-1876] BIDI: Orderingave: Error zGeefIngegevenKenmerken in BLDTOE+29^FLOWORD7 (bij order2admin):

- Gerelateerd aan vorige aanpassing, zijnde [ICT-759] [rvWV] PM: Maatwerk: BOMBOL VHIP481: Waarschuwing indien wijzigen variant die reeds voorbij orderklaar is:

- OrderService => Niet het Order moet bewaard worden, maar wel de OrderLijn, want daar zit de wijziging op. Order bewaren op die plek is overhead, want is op PRNr op OrderLijn na ongewijzigd.

- ProductOrderlijn => Property ProductIdIsGewijzigd als pointer om op juiste moment indexen te killen en rebuilden => Gebeurde blijkbaar (nog) niet in hoofde van de ProductUpdater, door vorige implementatie van VerwijderIndexenIndienNodig en BouwIndexenIndienNodig.

- ProductOrderlijn => Indexen rebuilden in ZetProductID weggehaald (was toevoeging in bovengenoemde story) => Was onzinnig, want in SWNODE^FLOWORD2 wordt gepersisteerde data opgehaald en die is op dat moment nog ongewijzigd (nog met oude PRNr) => Zou dus enkel de VerwijderIndexen ongedaan maken ipv de nieuwe te zetten.

- ProductOrderlijn => Voor rebuilden van indexen na zetten van ProductID voor ProductUpdate wordt nu vertrouwd op de Save => Die doet de Save van de Super vooraleer de indexen te rebuilden, dus al met juiste data opgehaald in SWNODE^FLOWORD2.

- ProductOrderlijn => Geen event ingesloten => Order2Admin volgt sowieso nog.

- DataMProductOrderlijn-Mock uitgebreid met Save.

    • -1
    • +1
    ./ProductVolgensAxAttribuutBepaler/OrderService.cls.xml
  1. … 3 more files in changeset.
[ICT-1828] Ingegeven kenmerken aanmaken voor MVX

- Uitbreiding voor MVX

  1. … 1 more file in changeset.