acumatica
Значительные изменения API между версиями
Поиск…
PXSelectGroupBy и битовые значения в Acumatica 5.1 и 5.2+
Метод представления SQL из представлений данных BQL PXSelectGroupBy<>
был изменен в Acumatica Framework 5.2.
В приведенных ниже разделах показаны различия с использованием примера PXSelectGroupBy<FinYear, Aggregate<GroupBy<FinYear.finPeriods>>>.Select(graph)
:
Acumatica Framework 5.2 и более поздние версии
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 и ранее
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])
объяснение
По умолчанию агрегат Max()
применяется ко всем полям, явно не указанным в инструкции BQL.
Однако в Acumatica 5.1 и ранее он исключает поля CreatedByID
, LastModifiedByID
и bool
. При переходе на SQL эти поля всегда будут иметь значение null
если вы явно не сгруппированы.
Начиная с версии 5.2, Max()
будет применяться по умолчанию для них тоже.
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow