Has anyone come across code generation error when trying to customise this projection?
IFS Development Studio shows below error
PL/SQL Package Body SERVICE_CONTRACT_HANDLING_SVC Created Successfully
!!!Package Body SERVICE_CONTRACT_HANDLING_SVC Created With Compilation Errors
PLS-00302: component 'QUOTATION_NEEDED_DB' must be declared error at line no :30115
PLS-00302: component 'QUOTATION_NEEDED_DB' must be declared error at line no :30129
We have empty ServiceContractHandling-Cust.projection file and only core code is generated.
The issue seems to be with Fragment SRVCON/RenewRequestContractAssistant which has below pl/sql code
-- quotation creation
$IF Component_Reqquo_SYS.INSTALLED $THEN
IF(rec_.quotation_needed_db) THEN
Client_SYS.Add_To_Attr('QUOTATION_NEEDED_DB', 'TRUE', attr_);
Client_SYS.Add_To_Attr('QUOTATION_NO', rec_.quotation_no, attr_);
Client_SYS.Add_To_Attr('QUOTATION_DESC', rec_.quotation_desc,attr_);
Client_SYS.Add_To_Attr('PRICE_EFFECTIVE_DATE', rec_.price_effective_date, attr_);
Client_SYS.Add_To_Attr('QUOTATION_EXP_DATE', rec_.quotation_exp_date, attr_);
END IF;
$END
IF (attr_ IS NOT NULL) THEN
Sc_Service_Contract_API.Renew(attr_);
END IF;
req_con_rec_.new_contract_id := Client_SYS.Get_Item_Value('CONTRACT_ID', attr_);
req_con_rec_.new_contract_name := Client_SYS.Get_Item_Value('CONTRACT_NAME', attr_);
$IF Component_Reqquo_SYS.INSTALLED $THEN
IF(rec_.quotation_needed_db) THEN
req_con_rec_.new_quot_details := Request_Quotation_API.Get_Quo_Details_By_Contract(Client_SYS.Get_Item_Value('CONTRACT_ID', attr_));
END IF;
$END
Our code code download from the build place does not have REQQUO component which is being used with the virtual in the above fragment.
virtual RenewReqContractVirtual {
….
….
-- quotation
@DynamicComponentDependency REQQUO
attribute QuotationNeededDb Boolean("TRUE", "FALSE");
@DynamicComponentDependency REQQUO
attribute QuotationNo Text {
maxlength = 12;
format = uppercase;
}
@DynamicComponentDependency REQQUO
attribute QuotationDesc Text {
label = "Quotation Description";
required = atrue];
maxlength = 200;
}
@DynamicComponentDependency REQQUO
attribute PriceEffectiveDate Date {
default = "SYSDATE";
editable = efalse];
}
@DynamicComponentDependency REQQUO
attribute QuotationExpDate Date;
@DynamicComponentDependency REQQUO
attribute NewQuotDetails Text;
action Finish Structure(RequestContrDetailsStruct);
}
We are trying to understand if anyone else is having the same issue.