0% found this document useful (0 votes)
6 views15 pages

Exc Beforesave

The document shows code for creating order records from service request records. It gets the current user ID and checks if the user is not a specific value. It then has logic to create order records, set various fields, and update existing records as processed.

Uploaded by

Kartik Metkar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views15 pages

Exc Beforesave

The document shows code for creating order records from service request records. It gets the current user ID and checks if the user is not a specific value. It then has logic to create order records, set various fields, and update existing records as processed.

Uploaded by

Kartik Metkar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 15

import ABSL;

import AP.Common.GDT as gdt;


import AP.FO.BusinessPartner.Global;
import AP.FO.ProductDataMaintenance.Global;
import AP.PC.IdentityManagement.Global;
import AP.FO.IBase.Global;
import AP.CRM.Global;
import BASIS.Global as b;
import AP.PC.ActivityManagement.Global;
import CommunicationServicesManagement.Global;
import DocumentServices.Global; // 1981

//Start of get Current login user


var IM = Identity.Retrieve(Context.GetCurrentIdentityUUID());
var userID;
var DNERules;
if (IM.IsSet() && !IM.ID.IsInitial())
{
userID = IM.ID.content;
}
//End of get current login user

if (userID != "C4CPRDEPLOY")
{

//-- Start of Exc1----


if (this.ZProcessed == false)
{
//if (!this.ZDummy1.IsInitial())
//{
//this.ZTicketID.content = this.ZDummy1.content;
//
//}

if (!this.ZTicketID.IsInitial())
{
var Qry = ServiceRequest.QueryByElements;
var Prm = Qry.CreateSelectionParams();
Prm.Add(Qry.ID.content, "I", "EQ",
this.ZTicketID.content.RemoveLeadingZeros());
var Res = Qry.Execute(Prm);
if (Res.GetFirst().IsSet())
{
var ID =
Res.GetFirst().UUID;//Library::Numeric.ParseFromString(this.ZTicketID.content);
var retr = ServiceRequest.Retrieve(ID);

var lv_Ticket = Res.GetFirst();


var lv_CustomerID =
lv_Ticket.BuyerParty.PartyKey.PartyID.content.RemoveLeadingZeros();
var lv_Brand = lv_Ticket.ZBrand_SR.RemoveLeadingZeros();

//Create Ticket Order


var el_TicketOrder : elementsof ZTicket_Order_BO;
el_TicketOrder.ZTicketID.content = this.ZTicketID.content;
el_TicketOrder.ZExternalReference.content =
this.ZTicketID.content;
el_TicketOrder.ZName.content = lv_Ticket.Name.content + "
EXC_REP_ORD " + retr.ReceivalTracking1;
el_TicketOrder.ZAccountID = lv_CustomerID;
el_TicketOrder.ZDocumentType = "ZEXC"; //Document Type -
TTI Warehouse
el_TicketOrder.ZOrderType = "WO"; //Order Type - Excalibur
order
el_TicketOrder.ZExternalReference.content =
this.ZTicketID.content.RemoveLeadingZeros(); //PO# - Ticket

var SalesOrgC;
var SalesOrgE;
var PRD_Brand;
var PRD = Material.QueryByDescription;
var PRD_SelParams = PRD.CreateSelectionParams();
PRD_SelParams.Add(PRD.ProductID.content, "I", "EQ",
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros());
var PRD_Results = PRD.Execute(PRD_SelParams);
if (PRD_Results.Count() > 0)
{
if
(PRD_Results.GetFirst().SalesProcessInformation.Count() > 0)
{
SalesOrgC =
PRD_Results.GetFirst().SalesProcessInformation.Where(n =>
n.SalesOrganisationID.RemoveLeadingZeros() != "6000");
SalesOrgE =
SalesOrgC.GetFirst().SalesOrganisationID.RemoveLeadingZeros();

el_TicketOrder.ZProduct_Line = SalesOrgE;

//if(PRD_Brand == "RIDGID")
//el_TicketOrder.ZProduct_Line = "3500";
//if(PRD_Brand == "RYOBI")
//el_TicketOrder.ZProduct_Line = "4000";
//if(PRD_Brand == "HART")
//el_TicketOrder.ZProduct_Line = "9000";
}

if (el_TicketOrder.ZProduct_Line.IsInitial())
{
//PRD Brand
if (PRD_Results.Count() > 0 &&
PRD_Results.GetFirst().Common.IsSet())
PRD_Brand =
PRD_Results.GetFirst().Common.ZBrand_PDesc;
//Set product line based on PRD brand
if (!PRD_Brand.IsInitial())
{
//var l_CustBrand =
lv_Ticket.BuyerParty.ToRoot.ZBrand;
if (PRD_Brand == "RIDGID")
el_TicketOrder.ZProduct_Line = "3500";
if (PRD_Brand == "RYOBI")
el_TicketOrder.ZProduct_Line = "4000";
if (PRD_Brand == "HART")
el_TicketOrder.ZProduct_Line = "9000";
}
}//1

//added
this.ZDummy1.content =
Context.GetCurrentSystemDateTime().content;
this.ZDummy2.content = lv_Ticket.ProcessingTypeCode;

el_TicketOrder.ZShipment_Type = "W_1355_1";

//indicator
el_TicketOrder.ZSurveyInd = true;

el_TicketOrder.ZDummy_Simulate = true; // Code for auto


simulate
el_TicketOrder.ZDummy_Transfer = true; // Code for auto
transfer .

//For Item
var ele_item : elementsof ZTicket_Order_BO.Item;

ele_item.ZQuantity.content = "1";
ele_item.ZQuantity.unitCode = "EA";//EQ

ele_item.ZProdutID.content =
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros();

//Start of code to set Product based on Model


//Start Fetch product from Substituion BO ..
var Substitute = ZProductSubstitutions.QueryByElements;

var Subpar = Substitute.CreateSelectionParams();


Subpar.Add(Substitute.Zkey, "I", "CP", "EXC*");
Subpar.Add(Substitute.ZModelNo, "I", "EQ",
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros());//ZProd_ID;
var resultSub = Substitute.Execute(Subpar);
if (resultSub.Count() > 0)
{
foreach (var entity in resultSub)
ele_item.ZProdutID.content = entity.ZPartNo;
}
else
{
ele_item.ZProdutID.content =
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros();//ZProd_ID;//
}

//indicator to update shipto address only for Replacement


claim
var Inst_Tic_Order =
ZTicket_Order_BO.Create(el_TicketOrder);
Inst_Tic_Order.Item.Create(ele_item);

this.ZProcessed = true;

//Update existing claim as processed


var QAuto_ExcaliburOrder =
Auto_ExcaliburOrder.QueryByElements;
var QAuto_ExcaliburOrder_SelParams =
QAuto_ExcaliburOrder.CreateSelectionParams();

QAuto_ExcaliburOrder_SelParams.Add(QAuto_ExcaliburOrder.ZTicketID.content,
"I", "EQ", lv_Ticket.ZRepClaimID);
var QAuto_ExcaliburOrder_Results =
QAuto_ExcaliburOrder.Execute(QAuto_ExcaliburOrder_SelParams);
if (QAuto_ExcaliburOrder_Results.Count() > 0)
{
var OrginalClaim =
QAuto_ExcaliburOrder_Results.GetFirst();
OrginalClaim.ZProcessed = true;
}

//Code clear data


var Q_BO = Auto_ExcaliburOrder.QueryByElements;
var Res_BO = Q_BO.Execute();
if (Res_BO.GetFirst().IsSet())
{
foreach (var lv_BO in Res_BO.Where(n => n.ZTicketID.content
!= this.ZTicketID.content))
{
// lv_BO.Delete();
}
}

}
//---------End of Exc1 ------
}
else
{

//Defincation of RunCycle Variable- Set at line 176


//RunCycle Order Type Shipment Type Product Line
//1 TTI WH Replacement Unit Power Tools
//2 TTI WH Replacement Unit Outdoor Products
//3 Gardner Replacement Unit Power Tools
//4 Gardner Replacement Unit Outdoor Products

//-------- EXC 2 --------


var RunCycle = 1;

if (this.ZProcessed == false) //start of 1


{

//EXC 2.1 Start //TTI WH Replacement Unit Power Tools


if (RunCycle == 1)
{
if (!this.ZTicketID.IsInitial())
{
var Qry = ServiceRequest.QueryByElements;
var Prm = Qry.CreateSelectionParams();
Prm.Add(Qry.ID.content, "I", "EQ",
this.ZTicketID.content.RemoveLeadingZeros());
var Res = Qry.Execute(Prm);
if (Res.GetFirst().IsSet())
{
var ID =
Res.GetFirst().UUID;//Library::Numeric.ParseFromString(this.ZTicketID.content);
var retr = ServiceRequest.Retrieve(ID);

var lv_Ticket = Res.GetFirst();


var lv_CustomerID =
lv_Ticket.BuyerParty.PartyKey.PartyID.content.RemoveLeadingZeros();
var lv_Brand =
lv_Ticket.ZBrand_SR.RemoveLeadingZeros();

//Create Ticket Order


var el_TicketOrder : elementsof ZTicket_Order_BO;
el_TicketOrder.ZTicketID.content =
this.ZTicketID.content;
el_TicketOrder.ZExternalReference.content =
this.ZTicketID.content;
el_TicketOrder.ZName.content = lv_Ticket.Name.content
+ " EXC_REP_ORD " + retr.ReceivalTracking1;
el_TicketOrder.ZAccountID = lv_CustomerID;
el_TicketOrder.ZDocumentType = "ZFD";//"ZEXC";
//Document Type - TTI Warehouse
el_TicketOrder.ZOrderType = "WO"; //Order Type -
Excalibur order
el_TicketOrder.ZExternalReference.content =
this.ZTicketID.content.RemoveLeadingZeros(); //PO# - Ticket

//var SalesOrgC;
//var SalesOrgE;
//var PRD_Brand;
//var PRD = Material.QueryByDescription;
//var PRD_SelParams = PRD.CreateSelectionParams();
//PRD_SelParams.Add(PRD.ProductID.content, "I", "EQ",
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros());
//var PRD_Results = PRD.Execute(PRD_SelParams);
//if (PRD_Results.Count() > 0)
//{
//if
(PRD_Results.GetFirst().SalesProcessInformation.Count() > 0)
//{
//SalesOrgC =
PRD_Results.GetFirst().SalesProcessInformation.Where(n =>
n.SalesOrganisationID.RemoveLeadingZeros() != "6000");
//SalesOrgE =
SalesOrgC.GetFirst().SalesOrganisationID.RemoveLeadingZeros();
//el_TicketOrder.ZProduct_Line = SalesOrgE;
//}
//
//}
//
//if (el_TicketOrder.ZProduct_Line.IsInitial())
//{
////PRD Brand
//if (PRD_Results.Count() > 0 &&
PRD_Results.GetFirst().Common.IsSet())
//PRD_Brand =
PRD_Results.GetFirst().Common.ZBrand_PDesc;
////Set product line based on PRD brand
//if (!PRD_Brand.IsInitial())
//{
////var l_CustBrand =
lv_Ticket.BuyerParty.ToRoot.ZBrand;
//if (PRD_Brand == "RIDGID")
//el_TicketOrder.ZProduct_Line = "3500";
//if (PRD_Brand == "RYOBI")
//el_TicketOrder.ZProduct_Line = "4000";
//if (PRD_Brand == "HART")
//el_TicketOrder.ZProduct_Line = "9000";
//}
//}//1
//
el_TicketOrder.ZProduct_Line = "3500";

//added
this.ZDummy1.content =
Context.GetCurrentSystemDateTime().content;
this.ZDummy2.content = lv_Ticket.ProcessingTypeCode;

el_TicketOrder.ZShipment_Type =
"W_1110_5";//"W_1355_1";

//indicator
el_TicketOrder.ZSurveyInd = true;

el_TicketOrder.ZDummy_Simulate = true; // Code for


auto simulate
el_TicketOrder.ZDummy_Transfer = true; // Code for
auto transfer .

//For Item
var ele_item : elementsof ZTicket_Order_BO.Item;

ele_item.ZQuantity.content = "1";
ele_item.ZQuantity.unitCode = "EA";//EQ

//ele_item.ZProdutID.content =
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros();

////Start of code to set Product based on Model


////Start Fetch product from Substituion BO ..
var Substitute =
ZProductSubstitutions.QueryByElements;
var Subpar = Substitute.CreateSelectionParams();
Subpar.Add(Substitute.Zkey, "I", "CP", "EXC*");
Subpar.Add(Substitute.ZModelNo, "I", "EQ",
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros());//ZProd_ID;
var resultSub = Substitute.Execute(Subpar);
if (resultSub.Count() > 0)
{
foreach (var entity in resultSub)
ele_item.ZProdutID.content =
entity.ZPartNo;
}
else
{
ele_item.ZProdutID.content =
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros();//ZProd_ID;//
}

//indicator to update shipto address only for


Replacement claim
var Inst_Tic_Order =
ZTicket_Order_BO.Create(el_TicketOrder);
Inst_Tic_Order.Item.Create(ele_item);
ele_item.Clear();
this.ZProcessed = true;

//Update existing claim as processed


var QAuto_ExcaliburOrder =
Auto_ExcaliburOrder.QueryByElements;
var QAuto_ExcaliburOrder_SelParams =
QAuto_ExcaliburOrder.CreateSelectionParams();

QAuto_ExcaliburOrder_SelParams.Add(QAuto_ExcaliburOrder.ZTicketID.content,
"I", "EQ", lv_Ticket.ZRepClaimID);
var QAuto_ExcaliburOrder_Results =
QAuto_ExcaliburOrder.Execute(QAuto_ExcaliburOrder_SelParams);
if (QAuto_ExcaliburOrder_Results.Count() > 0)
{
var OrginalClaim =
QAuto_ExcaliburOrder_Results.GetFirst();
OrginalClaim.ZProcessed = true;
}

}
}//runcycle_end
//EXC 2.1 End

//EXC 2.2 Start


if (RunCycle == 2)
{ //RunCycle_Start
if (!this.ZTicketID.IsInitial())
{
var Qry = ServiceRequest.QueryByElements;
var Prm = Qry.CreateSelectionParams();
Prm.Add(Qry.ID.content, "I", "EQ",
this.ZTicketID.content.RemoveLeadingZeros());
var Res = Qry.Execute(Prm);
if (Res.GetFirst().IsSet())
{
var ID =
Res.GetFirst().UUID;//Library::Numeric.ParseFromString(this.ZTicketID.content);
var retr = ServiceRequest.Retrieve(ID);

var lv_Ticket = Res.GetFirst();


var lv_CustomerID =
lv_Ticket.BuyerParty.PartyKey.PartyID.content.RemoveLeadingZeros();
var lv_Brand =
lv_Ticket.ZBrand_SR.RemoveLeadingZeros();

//Create Ticket Order


var el_TicketOrder : elementsof ZTicket_Order_BO;
el_TicketOrder.ZTicketID.content =
this.ZTicketID.content;
el_TicketOrder.ZExternalReference.content =
this.ZTicketID.content;
el_TicketOrder.ZName.content = lv_Ticket.Name.content
+ " EXC_REP_ORD " + retr.ReceivalTracking1;
el_TicketOrder.ZAccountID = lv_CustomerID;
el_TicketOrder.ZDocumentType = "ZFD";//"ZEXC";
//Document Type - TTI Warehouse
el_TicketOrder.ZOrderType = "WO"; //Order Type -
Excalibur order
el_TicketOrder.ZExternalReference.content =
this.ZTicketID.content.RemoveLeadingZeros(); //PO# - Ticket

//var SalesOrgC;
//var SalesOrgE;
//var PRD_Brand;
//var PRD = Material.QueryByDescription;
//var PRD_SelParams = PRD.CreateSelectionParams();
//PRD_SelParams.Add(PRD.ProductID.content, "I", "EQ",
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros());
//var PRD_Results = PRD.Execute(PRD_SelParams);
//if (PRD_Results.Count() > 0)
//{
//if
(PRD_Results.GetFirst().SalesProcessInformation.Count() > 0)
//{
//SalesOrgC =
PRD_Results.GetFirst().SalesProcessInformation.Where(n =>
n.SalesOrganisationID.RemoveLeadingZeros() != "6000");
//SalesOrgE =
SalesOrgC.GetFirst().SalesOrganisationID.RemoveLeadingZeros();
//
//el_TicketOrder.ZProduct_Line = SalesOrgE;
//}
//
//}
//
//if (el_TicketOrder.ZProduct_Line.IsInitial())
//{
////PRD Brand
//if (PRD_Results.Count() > 0 &&
PRD_Results.GetFirst().Common.IsSet())
//PRD_Brand =
PRD_Results.GetFirst().Common.ZBrand_PDesc;
////Set product line based on PRD brand
//if (!PRD_Brand.IsInitial())
//{
////var l_CustBrand =
lv_Ticket.BuyerParty.ToRoot.ZBrand;
//if (PRD_Brand == "RIDGID")
//el_TicketOrder.ZProduct_Line = "3500";
//if (PRD_Brand == "RYOBI")
//el_TicketOrder.ZProduct_Line = "4000";
//if (PRD_Brand == "HART")
//el_TicketOrder.ZProduct_Line = "9000";
//}
//}//1
el_TicketOrder.ZProduct_Line = "4000";
//added
this.ZDummy1.content =
Context.GetCurrentSystemDateTime().content;
this.ZDummy2.content = lv_Ticket.ProcessingTypeCode;

el_TicketOrder.ZShipment_Type = "W_1110_5";//
"W_1355_1";

//indicator
el_TicketOrder.ZSurveyInd = true;

el_TicketOrder.ZDummy_Simulate = true; // Code for


auto simulate
el_TicketOrder.ZDummy_Transfer = true; // Code for
auto transfer .

//For Item
var ele_item : elementsof ZTicket_Order_BO.Item;

ele_item.ZQuantity.content = "1";
ele_item.ZQuantity.unitCode = "EA";//EQ

// ele_item.ZProdutID.content =
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros();

//Start of code to set Product based on Model


////Start Fetch product from Substituion BO ..
var Substitute =
ZProductSubstitutions.QueryByElements;
var Subpar = Substitute.CreateSelectionParams();
Subpar.Add(Substitute.Zkey, "I", "CP", "EXC*");
Subpar.Add(Substitute.ZModelNo, "I", "EQ",
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros());//ZProd_ID;
var resultSub = Substitute.Execute(Subpar);
if (resultSub.Count() > 0)
{
foreach (var entity in resultSub)
ele_item.ZProdutID.content =
entity.ZPartNo;
}
else
{
ele_item.ZProdutID.content =
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros();//ZProd_ID;//
}

//indicator to update shipto address only for


Replacement claim
var Inst_Tic_Order =
ZTicket_Order_BO.Create(el_TicketOrder);
Inst_Tic_Order.Item.Create(ele_item);
ele_item.Clear();
this.ZProcessed = true;

//Update existing claim as processed


var QAuto_ExcaliburOrder =
Auto_ExcaliburOrder.QueryByElements;
var QAuto_ExcaliburOrder_SelParams =
QAuto_ExcaliburOrder.CreateSelectionParams();

QAuto_ExcaliburOrder_SelParams.Add(QAuto_ExcaliburOrder.ZTicketID.content,
"I", "EQ", lv_Ticket.ZRepClaimID);
var QAuto_ExcaliburOrder_Results =
QAuto_ExcaliburOrder.Execute(QAuto_ExcaliburOrder_SelParams);
if (QAuto_ExcaliburOrder_Results.Count() > 0)
{
var OrginalClaim =
QAuto_ExcaliburOrder_Results.GetFirst();
OrginalClaim.ZProcessed = true;
}

}
}
}//RunCycle2_end
//EXC 2.2 End

//EXC 2.3 Start


if (RunCycle == 3)
{ //RunCycle_Start3
if (!this.ZTicketID.IsInitial())
{
var Qry = ServiceRequest.QueryByElements;
var Prm = Qry.CreateSelectionParams();
Prm.Add(Qry.ID.content, "I", "EQ",
this.ZTicketID.content.RemoveLeadingZeros());
var Res = Qry.Execute(Prm);
if (Res.GetFirst().IsSet())
{
var ID =
Res.GetFirst().UUID;//Library::Numeric.ParseFromString(this.ZTicketID.content);
var retr = ServiceRequest.Retrieve(ID);

var lv_Ticket = Res.GetFirst();


var lv_CustomerID =
lv_Ticket.BuyerParty.PartyKey.PartyID.content.RemoveLeadingZeros();
var lv_Brand =
lv_Ticket.ZBrand_SR.RemoveLeadingZeros();

//Create Ticket Order


var el_TicketOrder : elementsof ZTicket_Order_BO;
el_TicketOrder.ZTicketID.content =
this.ZTicketID.content;
el_TicketOrder.ZExternalReference.content =
this.ZTicketID.content;
el_TicketOrder.ZName.content = lv_Ticket.Name.content
+ " EXC_REP_ORD " + retr.ReceivalTracking1;
el_TicketOrder.ZAccountID = lv_CustomerID;
el_TicketOrder.ZDocumentType = "ZZFD";//"ZEXC";
//Document Type - TTI Warehouse
el_TicketOrder.ZOrderType = "WO"; //Order Type -
Excalibur order
el_TicketOrder.ZExternalReference.content =
this.ZTicketID.content.RemoveLeadingZeros(); //PO# - Ticket

//var SalesOrgC;
//var SalesOrgE;
//var PRD_Brand;
//var PRD = Material.QueryByDescription;
//var PRD_SelParams = PRD.CreateSelectionParams();
//PRD_SelParams.Add(PRD.ProductID.content, "I", "EQ",
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros());
//var PRD_Results = PRD.Execute(PRD_SelParams);
//if (PRD_Results.Count() > 0)
//{
//if
(PRD_Results.GetFirst().SalesProcessInformation.Count() > 0)
//{
//SalesOrgC =
PRD_Results.GetFirst().SalesProcessInformation.Where(n =>
n.SalesOrganisationID.RemoveLeadingZeros() != "6000");
//SalesOrgE =
SalesOrgC.GetFirst().SalesOrganisationID.RemoveLeadingZeros();
//el_TicketOrder.ZProduct_Line = SalesOrgE;
//}
//
//}
//
//if (el_TicketOrder.ZProduct_Line.IsInitial())
//{
////PRD Brand
//if (PRD_Results.Count() > 0 &&
PRD_Results.GetFirst().Common.IsSet())
//PRD_Brand =
PRD_Results.GetFirst().Common.ZBrand_PDesc;
////Set product line based on PRD brand
//if (!PRD_Brand.IsInitial())
//{
////var l_CustBrand =
lv_Ticket.BuyerParty.ToRoot.ZBrand;
//if (PRD_Brand == "RIDGID")
//el_TicketOrder.ZProduct_Line = "3500";
//if (PRD_Brand == "RYOBI")
//el_TicketOrder.ZProduct_Line = "4000";
//if (PRD_Brand == "HART")
//el_TicketOrder.ZProduct_Line = "9000";
//}
//}//1
//

el_TicketOrder.ZProduct_Line = "3500";
//added
this.ZDummy1.content =
Context.GetCurrentSystemDateTime().content;
this.ZDummy2.content = lv_Ticket.ProcessingTypeCode;

el_TicketOrder.ZShipment_Type = "W_1110_4";

//indicator
el_TicketOrder.ZSurveyInd = true;

// el_TicketOrder.ZDummy_Simulate = true; // Code


for auto simulate
el_TicketOrder.ZDummy_Transfer = true; // Code for
auto transfer .
//For Item
var ele_item : elementsof ZTicket_Order_BO.Item;

ele_item.ZQuantity.content = "1";
ele_item.ZQuantity.unitCode = "EA";//EQ

//ele_item.ZProdutID.content =
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros();

////Start of code to set Product based on Model


////Start Fetch product from Substituion BO ..
var Substitute =
ZProductSubstitutions.QueryByElements;
var Subpar = Substitute.CreateSelectionParams();
Subpar.Add(Substitute.Zkey, "I", "CP", "EXC*");
Subpar.Add(Substitute.ZModelNo, "I", "EQ",
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros());//ZProd_ID;
var resultSub = Substitute.Execute(Subpar);
if (resultSub.Count() > 0)
{
foreach (var entity in resultSub)
ele_item.ZProdutID.content =
entity.ZPartNo;
}
else
{
ele_item.ZProdutID.content =
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros();//ZProd_ID;//
}

//indicator to update shipto address only for


Replacement claim
var Inst_Tic_Order =
ZTicket_Order_BO.Create(el_TicketOrder);
Inst_Tic_Order.Item.Create(ele_item);
ele_item.Clear();
this.ZProcessed = true;

//Update existing claim as processed


var QAuto_ExcaliburOrder =
Auto_ExcaliburOrder.QueryByElements;
var QAuto_ExcaliburOrder_SelParams =
QAuto_ExcaliburOrder.CreateSelectionParams();

QAuto_ExcaliburOrder_SelParams.Add(QAuto_ExcaliburOrder.ZTicketID.content,
"I", "EQ", lv_Ticket.ZRepClaimID);
var QAuto_ExcaliburOrder_Results =
QAuto_ExcaliburOrder.Execute(QAuto_ExcaliburOrder_SelParams);
if (QAuto_ExcaliburOrder_Results.Count() > 0)
{
var OrginalClaim =
QAuto_ExcaliburOrder_Results.GetFirst();
OrginalClaim.ZProcessed = true;
}

}
}//RunCycle3_end
//EXC 2.3 End

//EXC 2.4 Start


if (RunCycle == 4)
{ //RunCycle_Start4
if (!this.ZTicketID.IsInitial())
{
var Qry = ServiceRequest.QueryByElements;
var Prm = Qry.CreateSelectionParams();
Prm.Add(Qry.ID.content, "I", "EQ",
this.ZTicketID.content.RemoveLeadingZeros());
var Res = Qry.Execute(Prm);
if (Res.GetFirst().IsSet())
{
var ID =
Res.GetFirst().UUID;//Library::Numeric.ParseFromString(this.ZTicketID.content);
var retr = ServiceRequest.Retrieve(ID);

var lv_Ticket = Res.GetFirst();


var lv_CustomerID =
lv_Ticket.BuyerParty.PartyKey.PartyID.content.RemoveLeadingZeros();
var lv_Brand =
lv_Ticket.ZBrand_SR.RemoveLeadingZeros();

//Create Ticket Order


var el_TicketOrder : elementsof ZTicket_Order_BO;
el_TicketOrder.ZTicketID.content =
this.ZTicketID.content;
el_TicketOrder.ZExternalReference.content =
this.ZTicketID.content;
el_TicketOrder.ZName.content = lv_Ticket.Name.content
+ " EXC_REP_ORD " + retr.ReceivalTracking1;
el_TicketOrder.ZAccountID = lv_CustomerID;
el_TicketOrder.ZDocumentType = "ZZFD";//"ZEXC";
//Document Type - TTI Warehouse
el_TicketOrder.ZOrderType = "WO"; //Order Type -
Excalibur order
el_TicketOrder.ZExternalReference.content =
this.ZTicketID.content.RemoveLeadingZeros(); //PO# - Ticket

//var SalesOrgC;
//var SalesOrgE;
//var PRD_Brand;
//var PRD = Material.QueryByDescription;
//var PRD_SelParams = PRD.CreateSelectionParams();
//PRD_SelParams.Add(PRD.ProductID.content, "I", "EQ",
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros());
//var PRD_Results = PRD.Execute(PRD_SelParams);
//if (PRD_Results.Count() > 0)
//{
//if
(PRD_Results.GetFirst().SalesProcessInformation.Count() > 0)
//{
//SalesOrgC =
PRD_Results.GetFirst().SalesProcessInformation.Where(n =>
n.SalesOrganisationID.RemoveLeadingZeros() != "6000");
//SalesOrgE =
SalesOrgC.GetFirst().SalesOrganisationID.RemoveLeadingZeros();
//el_TicketOrder.ZProduct_Line = SalesOrgE;
//}
//
//}
//
//if (el_TicketOrder.ZProduct_Line.IsInitial())
//{
////PRD Brand
//if (PRD_Results.Count() > 0 &&
PRD_Results.GetFirst().Common.IsSet())
//PRD_Brand =
PRD_Results.GetFirst().Common.ZBrand_PDesc;
////Set product line based on PRD brand
//if (!PRD_Brand.IsInitial())
//{
////var l_CustBrand =
lv_Ticket.BuyerParty.ToRoot.ZBrand;
//if (PRD_Brand == "RIDGID")
//el_TicketOrder.ZProduct_Line = "3500";
//if (PRD_Brand == "RYOBI")
//el_TicketOrder.ZProduct_Line = "4000";
//if (PRD_Brand == "HART")
//el_TicketOrder.ZProduct_Line = "9000";
//}
//}//1

el_TicketOrder.ZProduct_Line = "4000";
//added
this.ZDummy1.content =
Context.GetCurrentSystemDateTime().content;
this.ZDummy2.content = lv_Ticket.ProcessingTypeCode;

el_TicketOrder.ZShipment_Type = "W_1110_4";

//indicator
el_TicketOrder.ZSurveyInd = true;

//el_TicketOrder.ZDummy_Simulate = true; // Code for


auto simulate
el_TicketOrder.ZDummy_Transfer = true; // Code for
auto transfer .

//For Item
var ele_item : elementsof ZTicket_Order_BO.Item;

ele_item.ZQuantity.content = "1";
ele_item.ZQuantity.unitCode = "EA";//EQ

//ele_item.ZProdutID.content =
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros();

////Start of code to set Product based on Model


////Start Fetch product from Substituion BO ..
var Substitute =
ZProductSubstitutions.QueryByElements;
var Subpar = Substitute.CreateSelectionParams();
Subpar.Add(Substitute.Zkey, "I", "CP", "EXC*");
Subpar.Add(Substitute.ZModelNo, "I", "EQ",
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros());//ZProd_ID;
var resultSub = Substitute.Execute(Subpar);
if (resultSub.Count() > 0)
{
foreach (var entity in resultSub)
ele_item.ZProdutID.content =
entity.ZPartNo;
}
else
{
ele_item.ZProdutID.content =
lv_Ticket.ZProd_ID.content.RemoveLeadingZeros();//ZProd_ID;//
}

//indicator to update shipto address only for


Replacement claim
var Inst_Tic_Order =
ZTicket_Order_BO.Create(el_TicketOrder);
Inst_Tic_Order.Item.Create(ele_item);
ele_item.Clear();
this.ZProcessed = true;

//Update existing claim as processed


var QAuto_ExcaliburOrder =
Auto_ExcaliburOrder.QueryByElements;
var QAuto_ExcaliburOrder_SelParams =
QAuto_ExcaliburOrder.CreateSelectionParams();

QAuto_ExcaliburOrder_SelParams.Add(QAuto_ExcaliburOrder.ZTicketID.content,
"I", "EQ", lv_Ticket.ZRepClaimID);
var QAuto_ExcaliburOrder_Results =
QAuto_ExcaliburOrder.Execute(QAuto_ExcaliburOrder_SelParams);
if (QAuto_ExcaliburOrder_Results.Count() > 0)
{
var OrginalClaim =
QAuto_ExcaliburOrder_Results.GetFirst();
OrginalClaim.ZProcessed = true;
}

}
}//RunCycle4_end

//EXC 2.4 End


} // end of 1

}//if--else 167 end

You might also like