Zoeken…


PXSelectGroupBy en bitwaarden in Acumatica 5.1 en 5.2+

De methode voor het genereren van SQL vanuit PXSelectGroupBy<> gegevensweergaven is gewijzigd in Acumatica Framework 5.2.

De onderstaande secties illustreren de verschillen met behulp van het voorbeeld van PXSelectGroupBy<FinYear, Aggregate<GroupBy<FinYear.finPeriods>>>.Select(graph) :

Acumatica Framework 5.2 en hoger

SELECT Max([finyear].[year]), 
       Max([finyear].[startdate]), 
       Max([finyear].[enddate]), 
       [finyear].[finperiods], 
       -- Attention!
       CONVERT (BIT, Max([finyear].[customperiods] + 0)),
       --
       Max([finyear].[begfinyearhist]), 
       Max([finyear].[periodsstartdatehist]), 
       Max([finyear].[noteid]), 
       ( NULL ), 
       ( NULL ), 
       ( NULL ), 
       Max([finyear].[tstamp]), 
       Max([finyear].[createdbyid]), 
       Max([finyear].[createdbyscreenid]), 
       Max([finyear].[createddatetime]), 
       Max([finyear].[lastmodifiedbyid]), 
       Max([finyear].[lastmodifiedbyscreenid]), 
       Max([finyear].[lastmodifieddatetime]) 
FROM   finyear FinYear 
WHERE  ( finyear.companyid = 2 ) 
GROUP  BY [finyear].[finperiods] 
ORDER  BY Max([finyear].[year])

Acumatica Framework 5.1 en eerder

SELECT Max([finyear].[year]), 
       Max([finyear].[startdate]), 
       Max([finyear].[enddate]), 
       [finyear].[finperiods], 
       -- Attention!
       ( NULL ), 
       --
       Max([finyear].[begfinyearhist]), 
       Max([finyear].[periodsstartdatehist]), 
       ( NULL ), 
       ( NULL ), 
       ( NULL ), 
       Max([finyear].[tstamp]), 
       ( NULL ), 
       Max([finyear].[createdbyscreenid]), 
       Max([finyear].[createddatetime]), 
       ( NULL ), 
       Max([finyear].[lastmodifiedbyscreenid]), 
       Max([finyear].[lastmodifieddatetime]) 
FROM   finyear FinYear 
WHERE  ( finyear.companyid = 2 ) 
GROUP  BY [finyear].[finperiods] 
ORDER  BY Max([finyear].[year]) 

Uitleg

Standaard wordt de Max() -aggregatie toegepast op alle velden die niet expliciet in een BQL-instructie worden vermeld.

Echter, in Acumatica 5.1 en eerder, sluit de CreatedByID , LastModifiedByID en bool velden. Wanneer deze velden in SQL worden vertaald, zijn deze velden altijd null tenzij u expliciet op groepeert.

Vanaf versie 5.2 wordt Max() ook standaard op hen toegepast.



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow