@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #S
@EndUserText.label: 'Sales Doc Fulfillment: Delivery Document'
@VDM.viewType: #CONSUMPTION
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@AbapCatalog.preserveKey: true
@AbapCatalog.sqlViewName: 'CSOFDELIVDOC'
define view C_SlsDocFlfmtDelivDoc
as
select from I_DeliveryDocument as DelivDoc
left outer to one join P_SlsDocFlfmtDeliveryDoc1 as DelivDocItemAmount
on DelivDoc.DeliveryDocument = DelivDocItemAmount.DeliveryDocument
left outer to one join I_SDDocStandardPartner as Partner
on DelivDoc.DeliveryDocument = Partner.SDDocument
left outer to one join I_SDDocumentCompletePartners as SoldToPartyAddressInfo on DelivDoc.DeliveryDocument = SoldToPartyAddressInfo.SDDocument
and SoldToPartyAddressInfo.SDDocumentItem = '000000'
and SoldToPartyAddressInfo.PartnerFunction = 'AG'
left outer to one join I_SDDocumentCompletePartners as ShipToPartyAddressInfo on DelivDoc.DeliveryDocument = ShipToPartyAddressInfo.SDDocument --AT 21.09.2018: new CE1902
and ShipToPartyAddressInfo.SDDocumentItem = '000000'
and ShipToPartyAddressInfo.PartnerFunction = 'WE'
//Extensibility
association [0..1] to E_DeliveryDocument as _Extension on $projection.DeliveryDocument = _Extension.DeliveryDocument
{
//Key
key DelivDoc.DeliveryDocument,
DelivDoc.DeliveryDocumentType,
//Delivery
@Consumption.valueHelpDefinition: [{ entity: { name: 'I_ShippingPointStdVH', element: 'ShippingPoint' }}]
@ObjectModel.text.element: [ 'ShippingPointName' ]
DelivDoc.ShippingPoint,
@UI.hidden: true
DelivDoc._ShippingPoint._Text[1:Language=$session.system_language].ShippingPointName,
DelivDoc.SalesOrganization,
DelivDoc.CompleteDeliveryIsDefined,
DelivDoc.DeliveryBlockReason,
@DefaultAggregation: #NONE
@Semantics.quantity.unitOfMeasure: 'HeaderWeightUnit'
DelivDoc.HeaderGrossWeight,
@Semantics.unitOfMeasure: true
@ObjectModel.foreignKey.association: '_HeaderWeightUnit'
DelivDoc.HeaderWeightUnit,
@DefaultAggregation: #NONE
DelivDoc.TotalNumberOfPackage,
@Semantics.amount.currencyCode: 'TransactionCurrency'
@DefaultAggregation: #NONE
DelivDocItemAmount.ActualDeliveryAmount as ActualDeliveryAmount,
@Semantics.currencyCode:true
@ObjectModel.foreignKey.association: '_TransactionCurrency'
DelivDocItemAmount.TransactionCurrency,
//Partner
@ObjectModel.text.element: [ 'SoldToPartyFullName' ]
DelivDoc.SoldToParty,
@Semantics.text: true
cast (DelivDoc._SoldToParty.CustomerName as vdm_sold_to_name) as SoldToPartyName,
-- AT30.09.2021: changes for BP Adoption (CE2202) --*FullName
--cast(_SoldToParty._StandardAddress.FullName as fullnamesoldtoparty) as SoldToPartyFullName, --old modeling (no document address, no multiple address)
@ObjectModel.readOnly: true
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_SOF_FULLNAME'
cast( '' as fullnamesoldtoparty ) as SoldToPartyFullName,
-- AT30.09.2021: end
DelivDoc._SoldToParty.CustomerClassification,
//_SoldToParty.AddressID,
-- AT19.05.2021: changes for BP Adoption (CE2108) --*FormattedAddress
SoldToPartyAddressInfo.AddressID,
SoldToPartyAddressInfo.AddressObjectType,
SoldToPartyAddressInfo.AddressPersonID,
@ObjectModel.readOnly: true
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_SOF_ADDRESS'
cast( ' ' as formattedaddresssoldtoparty )as SoldToPartyFormattedAddress,
-- AT19.05.2021: end
@ObjectModel.text.element: [ 'ShipToPartyFullName' ]
DelivDoc.ShipToParty,
@Semantics.text: true
cast (DelivDoc._ShipToParty.CustomerName as ship_to_name) as ShipToPartyName,
-- AT30.09.2021: changes for BP Adoption (CE2202) --*FullName
--cast (_ShipToParty._StandardAddress.FullName as fullnameshiptoparty) as ShipToPartyFullName, --old modeling (no document address, no multiple address)
@ObjectModel.readOnly: true
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_SOF_FULLNAME'
cast( '' as fullnameshiptoparty ) as ShipToPartyFullName,
-- AT30.09.2021: end
-- AT19.05.2021: changes for BP Adoption (CE2108) --*FormattedAddress
ShipToPartyAddressInfo.AddressID as ShipToPartyAddressID,
ShipToPartyAddressInfo.AddressObjectType as ShipToPartyAddressObjectType,
ShipToPartyAddressInfo.AddressPersonID as ShipToPartyAddressPersonID,
@ObjectModel.readOnly: true
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_SOF_ADDRESS'
cast( ' ' as formattedaddressshiptoparty )as ShipToPartyFormattedAddress, --AT 29.09.2018: new CE1902
-- AT19.05.2021: end
@ObjectModel.text.element: [ 'ShipToPartyCountryName' ]
-- AT30.09.2021: changes for BP Adoption (CE2202)
--cast (_ShipToParty._StandardAddress.Country as shiptopartycountry) as ShipToPartyCountry, --old modeling (no document address, no multiple address)
@ObjectModel.readOnly: true
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_SOF_COUNTRYNAME'
cast( '' as shiptopartycountry ) as ShipToPartyCountry ,
-- AT30.09.2021: end
@Semantics.text: true
-- AT30.09.2021: changes for BP Adoption (CE2202)
--cast (_ShipToParty._StandardAddress._Country._Text[1: Language = $session.system_language].CountryName as shiptopartycountryname) as ShipToPartyCountryName, --old modeling (no document address, no multiple address)
@ObjectModel.readOnly: true
@ObjectModel.virtualElement: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_SOF_COUNTRYNAME'
cast( '' as shiptopartycountryname ) as ShipToPartyCountryName ,
-- AT30.09.2021: end
@ObjectModel.text.element: [ 'BillToPartyName' ]
Partner.BillToParty,
@Semantics.text: true
cast (Partner._BillToParty.CustomerName as bill_to_name) as BillToPartyName,
@ObjectModel.text.element: [ 'PayerPartyName' ]
Partner.PayerParty,
@Semantics.text: true
cast (Partner._PayerParty.CustomerName as payer_name) as PayerPartyName,
// Pick Pack Load
DelivDoc.PickingDate,
DelivDoc.LoadingDate,
//Shipping
DelivDoc.ShippingType,
DelivDoc.DeliveryDate,
cast(DelivDoc.TransportationPlanningDate as tddat_plan) as TransportationPlanningDate,
DelivDoc.ShippingCondition,
cast(DelivDoc.PlannedGoodsIssueDate as wadak_plan) as PlannedGoodsIssueDate,
cast(ActualGoodsMovementDate as vdm_actualgmdate) as ActualGoodsMovementDate,
ProofOfDeliveryDate,
//Billing
DelivDoc.BillingDocumentDate,
// Status
DelivDoc.OverallSDProcessStatus,
DelivDoc.TransportationPlanningStatus,
@ObjectModel.foreignKey.association: '_OverallDelivReltdBillgStatus'
cast(DelivDoc.OverallDelivReltdBillgStatus as deliv_rel_billg_status preserving type) as OverallDelivReltdBillgStatus,
DelivDoc.OverallGoodsMovementStatus,
@ObjectModel.foreignKey.association: '_OvrlWarehouseActyStatus'
cast(DelivDoc.OverallWarehouseActivityStatus as vdm_lvstk preserving type) as OverallWarehouseActivityStatus,
DelivDoc.OverallProofOfDeliveryStatus,
DelivDoc.OverallPackingStatus,
DelivDoc.OverallPickingStatus,
DelivDoc.HdrGeneralIncompletionStatus,
DelivDoc.HeaderDelivIncompletionStatus,
DelivDoc.HeaderBillgIncompletionStatus,
DelivDoc.HeaderPackingIncompletionSts,
@ObjectModel.foreignKey.association: '_HeaderPickgIncompletionStatus'
cast(DelivDoc.HeaderPickgIncompletionStatus as hdr_pickg_incompletion_status preserving type ) as HeaderPickgIncompletionStatus,
@ObjectModel.foreignKey.association: '_HdrGoodsMvtIncompletionStatus'
cast(DelivDoc.HdrGoodsMvtIncompletionStatus as hdr_gdsmvt_incompletion_status preserving type) as HdrGoodsMvtIncompletionStatus,
DelivDoc.OvrlItmGeneralIncompletionSts,
DelivDoc.OvrlItmDelivIncompletionSts,
DelivDoc.OvrlItmPackingIncompletionSts,
@ObjectModel.foreignKey.association: '_OvrlItmPickingIncompletionSts'
cast(DelivDoc.OvrlItmPickingIncompletionSts as ovrlitm_pickg_incompltn_sts preserving type ) as OvrlItmPickingIncompletionSts ,
@ObjectModel.foreignKey.association: '_OvrlItmGdsMvtIncompletionSts'
cast(DelivDoc.OvrlItmGdsMvtIncompletionSts as ovrlitm_gdsmvt_incompltn_sts preserving type ) as OvrlItmGdsMvtIncompletionSts ,
@ObjectModel.foreignKey.association: '_CentralCreditCheckStatus'
cast(DelivDoc.CentralCreditCheckStatus as central_credit_check_status preserving type) as CentralCreditCheckStatus,
DelivDoc.FinDocCreditCheckStatus,
DelivDoc.ExprtInsurCreditCheckStatus,
DelivDoc.PaytAuthsnCreditCheckSts,
@ObjectModel.foreignKey.association: '_OverallChmlCmplncStatus'
cast(DelivDoc.OverallChmlCmplncStatus as mon_tdd_total_pcsta preserving type) as OverallChmlCmplncStatus,
@ObjectModel.foreignKey.association: '_OverallDangerousGoodsStatus'
cast(DelivDoc.OverallDangerousGoodsStatus as mon_tdd_total_dgsta preserving type) as OverallDangerousGoodsStatus,
@ObjectModel.foreignKey.association: '_OvrlSftyDataSheetSts'
cast(DelivDoc.OverallSafetyDataSheetStatus as mon_tdd_total_sdssta preserving type) as OverallSafetyDataSheetStatus,
@ObjectModel.foreignKey.association: '_OverallTrdCmplncEmbargoSts'
cast(DelivDoc.OverallTrdCmplncEmbargoSts as totembargochksts preserving type) as OverallTrdCmplncEmbargoSts,
@ObjectModel.foreignKey.association: '_OvrlTrdCmplncSnctndListChkSts'
cast(DelivDoc.OvrlTrdCmplncSnctndListChkSts as totwatchlistscrngchksts preserving type) as OvrlTrdCmplncSnctndListChkSts,
@ObjectModel.foreignKey.association: '_OvrlTrdCmplncLegalCtrlChkSts'
cast(DelivDoc.OvrlTrdCmplncLegalCtrlChkSts as totlglctrlchksts preserving type) as OvrlTrdCmplncLegalCtrlChkSts,
//Criticality
@UI.hidden: true
cast(
case
when DeliveryBlockReason <> '' then 1
else 9 // no icon
end as abap.int1
) as DeliveryBlockReasonCriticality,
@UI.hidden: true
cast(
case
when DelivDoc.CentralCreditCheckStatus = 'D'
or DelivDoc.CentralCreditCheckStatus = 'A' then 3 //D - Released, A - Approved
when DelivDoc.CentralCreditCheckStatus = '' then 0 // '' - not performed
else 1
end as abap.int1
) as CentralCreditChkStsCriticality,
@UI.hidden: true
cast(
case
when PaytAuthsnCreditCheckSts = 'D'
or PaytAuthsnCreditCheckSts = 'A' then 3 //D - Released, A - Approved
when PaytAuthsnCreditCheckSts = '' then 0 // '' - not performed
else 1
end as abap.int1
) as PaytAuthCrdtChkStsCriticality,
@UI.hidden: true
cast(
case
when FinDocCreditCheckStatus = 'D'
or FinDocCreditCheckStatus = 'A' then 3 //D - Released, A - Approved
when FinDocCreditCheckStatus = '' then 0
else 1
end as abap.int1
) as FinDocCrdtCheckStsCriticality,
@UI.hidden: true
cast(
case
when ExprtInsurCreditCheckStatus = 'D'
or ExprtInsurCreditCheckStatus = 'A' then 3 //D - Released, A - Approved
when ExprtInsurCreditCheckStatus = '' then 0 // '' - not performed
else 1
end as abap.int1
) as ExprtInsurCrdtChkStsCritlty,
@UI.hidden: true
cast(
case
when HdrGeneralIncompletionStatus <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as HdrGenIncompltnStsCriticality,
@UI.hidden: true
cast(
case
when HeaderDelivIncompletionStatus <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as HdrDelivIncompltnStsCritlty,
@UI.hidden: true
cast(
case
when HeaderPickgIncompletionStatus <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as HdrPickingIncompltnStsCritlty,
@UI.hidden: true
cast(
case
when HeaderPackingIncompletionSts <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as HdrPackgIncompltnStsCritlty,
@UI.hidden: true
cast(
case
when HdrGoodsMvtIncompletionStatus <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as HdrGdsMvtIncompltnStsCritlty,
@UI.hidden: true
cast(
case
when HeaderBillgIncompletionStatus <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as HdrBillgIncompltnStsCritlty,
@UI.hidden: true
cast(
case
when OvrlItmGeneralIncompletionSts <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as OvrlItmGenIncompltnStsCritlty,
@UI.hidden: true
cast(
case
when OvrlItmDelivIncompletionSts <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as OvrlItmDelivIncompltnCritlty,
@UI.hidden: true
cast(
case
when OvrlItmPickingIncompletionSts <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as OvrlItmPickingIncompltnCritlty,
@UI.hidden: true
cast(
case
when OvrlItmPackingIncompletionSts <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as OvrlItmPackgIncompltnCritlty,
@UI.hidden: true
cast(
case
when OvrlItmGdsMvtIncompletionSts <> 'C' then 1 // C - Complete
else 3
end as abap.int1
) as OvrlItmGdsMvtIncompltnCritlty,
@UI.hidden: true
cast(
case
when OverallDelivReltdBillgStatus = 'C' then 3
when OverallDelivReltdBillgStatus = '' then 0 // C - Fully Invoiced & '' - not rel. for bill
when OverallDelivReltdBillgStatus = 'A' and DelivDoc.BillingDocumentDate < $session.system_date
or OverallDelivReltdBillgStatus = 'B' and DelivDoc.BillingDocumentDate < $session.system_date then 1
else 2
end as abap.int1
) as OvrlDelivReltdBillgStsCritlty,
@UI.hidden: true
cast(
case
when TransportationPlanningStatus = 'C' then 3
when TransportationPlanningStatus = '' then 0 // C - Complete transp. planning & '' - not rel. transp plan
when TransportationPlanningStatus = 'A' and DelivDoc.TransportationPlanningDate < $session.system_date
or TransportationPlanningStatus = 'B' and DelivDoc.TransportationPlanningDate < $session.system_date then 1
else 2
end as abap.int1
) as TransportationPlngStsCritlty,
@UI.hidden: true
cast(
case
when OverallPickingStatus = 'C' then 3
when OverallPickingStatus = '' then 0 // C - fully picked & '' - not rel for picking
when OverallPickingStatus = 'A' and DelivDoc.PickingDate < $session.system_date
or OverallPickingStatus = 'B' and DelivDoc.PickingDate < $session.system_date then 1
else 2
end as abap.int1
) as OverallPickingStsCriticality,
@UI.hidden: true
cast(
case
when OverallGoodsMovementStatus = 'C' then 3
when OverallGoodsMovementStatus = '' then 0 // C - Completet & '' - not yet started
when OverallGoodsMovementStatus = 'A' and DelivDoc.ActualGoodsMovementDate < $session.system_date
or OverallGoodsMovementStatus = 'B' and DelivDoc.ActualGoodsMovementDate < $session.system_date then 1
else 2
end as abap.int1
) as OvrlGdsMovementStsCriticality,
@UI.hidden: true
cast(
case
when OverallChmlCmplncStatus = 'A' then 3 // Approved
when OverallChmlCmplncStatus = '' then 0 // No Check
else 1 // Blocked, Approval Rejected
end as abap.int1
) as OvrlChmlCmplncStsCriticality,
@UI.hidden: true
cast(
case
when OverallDangerousGoodsStatus = 'A' then 3 // Transport allowed
when OverallDangerousGoodsStatus = '' or
OverallDangerousGoodsStatus = 'B' then 0 // Not relevant for Checks, Warning
else 1 // Blocked
end as abap.int1
) as OvrlDngrsGdsStsCriticality,
@UI.hidden: true
cast(
case
when OverallSafetyDataSheetStatus = 'A' then 3 // Ok approved
when OverallSafetyDataSheetStatus = '' or
OverallSafetyDataSheetStatus = 'B' then 0 // Not relevant for Checks, Warning
else 1 // Blocked
end as abap.int1
) as OvrlSftyDataSheetStsCritlty,
@UI.hidden: true
cast(
case
when OverallTrdCmplncEmbargoSts = 'A' then 3 // Released
when OverallTrdCmplncEmbargoSts = '' then 0 // Not relevant for Checks
else 1 // Partially Pending, Partially Blocked, Pending, Blocked
end as abap.int1
) as OvrlTrdCmplncEmbargoStsCritlty,
@UI.hidden: true
cast(
case
when OvrlTrdCmplncSnctndListChkSts = 'A' then 3 // Released
when OvrlTrdCmplncSnctndListChkSts = '' then 0 // Not relevant for Checks
else 1 // Partially Pending, Partially Blocked, Pending, Blocked
end as abap.int1
) as OvrlTrdCmplncSnctndListCritlty,
@UI.hidden: true
cast(
case
when OvrlTrdCmplncLegalCtrlChkSts = 'A' then 3 // Released
when OvrlTrdCmplncLegalCtrlChkSts = '' then 0 // Not relevant for Checks
else 1 // Partially Pending, Partially Blocked, Pending, Blocked
end as abap.int1
) as OvrlTrdCmplncLglCtrlStsCritlty,
@UI.hidden: true
@Semantics.booleanIndicator: true
@ObjectModel.virtualElement
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_SOF_TRADE_COMPL_RELE'
cast('' as boole_d preserving type ) as TradeComplianceIsActive,
//Associations
_DeliveryDocumentType,
_SalesOrganization,
_DeliveryBlockReason,
_HeaderWeightUnit,
DelivDocItemAmount._TransactionCurrency,
_ShippingType,
_ShippingCondition,
DelivDoc._SoldToParty._CustomerClassification,
_OverallSDProcessStatus,
_OverallGoodsMovementStatus,
_TransportationPlanningSts,
_OverallDelivReltdBillgStatus,
_OvrlWarehouseActyStatus,
_OverallProofOfDeliveryStatus,
_OverallPackingStatus,
_OverallPickingStatus,
_HdrGeneralIncompletionStatus,
_HeaderDelivIncompletionStatus,
_HeaderBillgIncompletionStatus,
_HeaderPackingIncompletionSts,
_HeaderPickgIncompletionStatus,
_HdrGoodsMvtIncompletionStatus,
_OvrlItmGeneralIncompletionSts,
_OvrlItmPackingIncompletionSts,
_OvrlItmPickingIncompletionSts,
_OvrlItmDelivIncompletionSts,
_OvrlItmGdsMvtIncompletionSts,
_CentralCreditCheckStatus,
_FinDocCreditCheckStatus,
_ExprtInsurCreditCheckStatus,
_PaytAuthsnCreditCheckSts,
_OverallChmlCmplncStatus,
_OverallDangerousGoodsStatus,
_OvrlSftyDataSheetSts,
_OverallTrdCmplncEmbargoSts,
_OvrlTrdCmplncSnctndListChkSts,
_OvrlTrdCmplncLegalCtrlChkSts
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CUSTOMER",
"I_DELIVERYDOCUMENT",
"I_SDDOCSTANDARDPARTNER",
"I_SDDOCUMENTCOMPLETEPARTNERS",
"I_SHIPPINGPOINT",
"I_SHIPPINGPOINTTEXT",
"P_SLSDOCFLFMTDELIVERYDOC1"
],
"ASSOCIATED":
[
"E_DELIVERYDOCUMENT",
"I_CENTRALCREDITCHECKSTATUS",
"I_CURRENCY",
"I_CUSTOMERCLASSIFICATION",
"I_DELIVERYBLOCKREASON",
"I_DELIVERYDOCUMENTTYPE",
"I_EXPRTINSURCREDITCHECKSTATUS",
"I_FINDOCCREDITCHECKSTATUS",
"I_HDRBILLGINCOMPLETIONSTATUS",
"I_HDRDELIVINCOMPLETIONSTATUS",
"I_HDRGENINCOMPLETIONSTATUS",
"I_HDRGOODSMVTINCOMPLTNSTATUS",
"I_HDRPACKINGINCOMPLTNSTATUS",
"I_HDRPICKGINCOMPLTNSTATUS",
"I_OVERALLDELIVCHMLCMPLNCSTS",
"I_OVERALLDELIVRELTDBILLGSTS",
"I_OVERALLGOODSMOVEMENTSTATUS",
"I_OVERALLPACKINGSTATUS",
"I_OVERALLPICKINGSTATUS",
"I_OVERALLPROOFOFDELIVSTATUS",
"I_OVERALLSDPROCESSSTATUS",
"I_OVRLDELIVDNGRSGDSSTS",
"I_OVRLDELIVSFTYDATASHTSTS",
"I_OVRLITMDELIVINCOMPLETIONSTS",
"I_OVRLITMGDSMVTINCOMPLTNSTS",
"I_OVRLITMGENINCOMPLETIONSTS",
"I_OVRLITMPACKINGINCOMPLTNSTS",
"I_OVRLITMPICKINGINCOMPLTNSTS",
"I_OVRLTRADECMPLNCEMBARGOSTATUS",
"I_OVRLTRDCMPLNCLEGALCTRLCHKSTS",
"I_OVRLWAREHOUSEACTYSTATUS",
"I_OVTRDCMPLNCSNCTNDLISTCHKSTS",
"I_PAYTAUTHSNCREDITCHECKSTS",
"I_SALESORGANIZATION",
"I_SHIPPINGCONDITION",
"I_SHIPPINGTYPE",
"I_TRANSPORTATIONPLANNINGSTS",
"I_UNITOFMEASURE"
],
"BASE":
[
"I_CUSTOMER",
"I_DELIVERYDOCUMENT",
"P_SLSDOCFLFMTDELIVERYDOC1"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/