Transaction Validation
Fri Apr 11 2025 04:08:41 GMT+0000 (Coordinated Universal Time)
Saved by @Pooja
void Transactions.get_Transaction_Validations(int getdata)
{
getTransInfo = Transactions[ID == input.getdata];
idsString = "";
count = getTransInfo.count();
startIndex = 0;
//
for each test in getTransInfo
{
// Assign Transaction ID based on the index
// if(startIndex < 1000)
// {
// test.Transaction="TNID-001";
// }
// else if(startIndex < 2000)
// {
// test.Transaction="TNID-002";
// }
// else if(startIndex < 3000)
// {
// test.Transaction="TNID-003";
// }
// else if(startIndex < 4000)
// {
// test.Transaction="TNID-004";
// }
// else if(startIndex < 5000)
// {
// test.Transaction="TNID-005";
// }
// info "Record ID: " + test.ID.toString() + " | Start Index: " + startIndex + " | Transaction: " + test.Transaction;
startIndex = startIndex + 1;
// Maintain ID String
if(idsString != "")
{
idsString = idsString + ",";
}
idsString = idsString + test.ID.toString();
// Generate Application Number
// getID = Transactions[ID != null] sort by Application_No1 desc;
// if(getID.count() == 0)
// {
// test.Application_No1="APP-001";
// }
// else
// {
// var1 = getID.Application_No1.getsuffix("APP-");
// if(var1.isEmpty() || !var1.isNumber())
// {
// var2 = 1;
// }
// else
// {
// var2 = var1.toLong() + 1;
// }
// autoList = var2.toString().length();
// TarnsList = {1:"APP-00",2:"APP-0",3:"APP-"};
// test.Application_No1=TarnsList.get(autoList) + var2;
// }
// // Fetch Partner Category
// getcategory = Partner_Enquiry[Partner_Entity_Name == test.Partner_Entity_Name];
// // test.Partner_Category=getcategory.Partner_Category;
// // Perform Validation Checks
// for each getValidation in Validation_Rule_Master[Partner_Category.Partner_Category == test.Partner_Category]
// {
// if(getValidation.count() > 0)
// {
// if(test.Documentation_Status == getValidation.Valid_Tags)
// {
// test.Document_Check=true;
// }
// }
// else
// {
// test.Document_Check=false;
// }
// }
// for each getValidation in Validation_Rule_Master[Partner_Category.Partner_Category == test.Partner_Category]
// {
// if(getValidation.count() > 0)
// {
// if(test.Program == getValidation.Valid_Tags)
// {
// test.Program_check=true;
// }
// }
// else
// {
// test.Program_check=false;
// }
// }
// for each getValidation in Validation_Rule_Master[Partner_Category.Partner_Category == test.Partner_Category]
// {
// if(getValidation.count() > 0)
// {
// if(test.Elective == getValidation.Valid_Tags)
// {
// test.Elective_Check=true;
// }
// }
// else
// {
// test.Elective_Check=false;
// }
// }
// // Final Validation Check
// if(test.Document_Check == true && test.Elective_Check == true && test.Program_check == true)
// {
// test.Validation_Check_Status="Valid";
// }
// else
// {
// test.Validation_Check_Status="Invalid";
// }
// Fetch Partner Name
// partner = Partner_Details[Partner_ID == test.Partner_ID];
// test.Partner_Entity_Name=partner.Partner_Entity_Name;
//fetch Address
getAddress = Partner_Onboarding_and_KYC[Partner_Entity_Name == test.Partner_Entity_Name];
test.Partner_Address=getAddress.Partner_Address;
test.Partner_Category=getAddress.Partner_Category;
ratecarddet1 = RATE_CARD[Partner_Entity_Name.Partner_Entity_Name == test.Partner_Entity_Name];
thisapp.Transactions.CreateTransactionID(test.ID);
if(ratecarddet1.count() == 0)
{
test.Validation_Comments="Partner entity not onboarded in Partner Master Data. Complete onboarding process and re-initiate transactions.";
//test.Validation_Comments="Partner Entity name is not matching with the rate card.";
test.Validation_Check_Status="Invalid";
//test.Transaction="";
}
else
{
ratecarddet2 = RATE_CARD[Partner_Entity_Name.Partner_Entity_Name == test.Partner_Entity_Name && University_Name.University_Name == test.University_Name];
if(ratecarddet2.count() == 0)
{
test.Validation_Comments="University not updated in masters. Update University Master and re-initiate transactions.";
//test.Validation_Comments="University is not matching with the rate card.";
test.Validation_Check_Status="Invalid";
//test.Transaction="";
}
else
{
ratecarddet3 = RATE_CARD[Partner_Entity_Name.Partner_Entity_Name == test.Partner_Entity_Name && University_Name.University_Name == test.University_Name && Elective.Elective == test.Elective];
if(ratecarddet3.count() == 0)
{
test.Validation_Comments="Elective not updated in masters. Update Elective Master and re-initiate transactions.";
// test.Validation_Comments="Elective is not matching with the rate card.";
test.Validation_Check_Status="Invalid";
//test.Transaction="";
}
else
{
// info "program " + test.Program;
// info "rate card program " + ratecarddet3.Programs.Programs;
ratecarddet4 = RATE_CARD[Partner_Entity_Name.Partner_Entity_Name == test.Partner_Entity_Name && University_Name.University_Name == test.University_Name && Elective.Elective == test.Elective && Programs.Programs == test.Program];
if(ratecarddet4.count() == 0)
{
test.Validation_Comments="Program not updated in the master. Update Program Master and re-initiate transactions.";
//test.Validation_Comments="Program is not matching with the rate card.";
test.Validation_Check_Status="Invalid";
//test.Transaction="";
}
else
{
ratecarddet5 = RATE_CARD[Partner_Entity_Name.Partner_Entity_Name == test.Partner_Entity_Name && University_Name.University_Name == test.University_Name && Elective.Elective == test.Elective && Programs.Programs == test.Program && CP_Approval_Status == "Approved"];
// info "rate card 5 " + ratecarddet4;
if(ratecarddet5.count() == 0)
{
test.Validation_Comments="Rate Card is not approved.";
test.Validation_Check_Status="Invalid";
//test.Transaction="";
}
else
{
validStatuses = {"Category A","Category B","Category C","Category D","Category E","Category F","L1 verified","L2 verified","Re-upload required"};
if(!validStatuses.contains(test.Documentation_Status1.Document_Status))
{
test.Validation_Comments="Document Status is Invalid";
test.Validation_Check_Status="Invalid";
}
else
{
/*Fetch Payout*/
getPayout = RATE_CARD[Elective.Elective == test.Elective && Programs.Programs == test.Program && Partner_Entity_Name.Partner_Entity_Name == test.Partner_Entity_Name && University_Name.University_Name == test.University_Name && CP_Approval_Status == "Approved"];
if(getPayout.count() > 0)
{
for each recs in getPayout
{
getpartnerid = Partner_Onboarding_and_KYC[Partner_Entity_Name == recs.Partner_Entity_Name.Partner_Entity_Name];
if(test.Enrollment_Date >= recs.Effective_start_date && test.Enrollment_Date <= recs.Effective_end_date)
{
test.Partner_ID=getpartnerid.Partner_ID;
test.Contracting_organisation=getpartnerid.Contracting_organisation1;
test.Validation_Check_Status="Valid";
test.Validation_Comments="Ready for commission calculation.";
// if(test.Validation_Check_Status == "Valid")
// {
// }
/*create Transaction ID*/
test.Payout=getPayout.Payout;
// info "info test id " + test.ID;
// thisapp.Transactions.Trasaction_ID(test.ID);
}
else
{
test.Validation_Comments="No approved rate card found for the enrollment date.";
//test.Validation_Comments="Effective start and end date is not macthing with the enrollment date.";
test.Validation_Check_Status="Invalid";
test.Transaction="";
}
}
}
}
}
}
}
}
}
// else
// {
// test.Validation_Check_Status="Invalid";
// }
// /* Fetch Partner ID*/
getPartner = Partner_Details[Partner_Entity_Name == test.Partner_Entity_Name];
if(getPartner.count() > 0)
{
test.Partner_ID=getPartner.Partner_ID;
}
// Redirect if validation status is not pending
// if(test.Validation_Check_Status != "Pending")
// {
// openUrl("#Report:Transactions_Status","same window");
// }
// Set Internal Invoice Status
test.Internal_Invoice_Status="Open";
// CP Validation
cp_mas = Partner_Details[Partner_Entity_Name == test.Partner_Entity_Name];
if(cp_mas.count() > 0)
{
test.CP_Master_Validation="Success";
test.Send_mail_to_CP="Yes";
}
else
{
test.CP_Master_Validation="Failure";
}
// Send Email if required
if(getTransInfo.Send_mail_to_CP == "Yes" && getTransInfo.CP_Master_Validation == "Success")
{
getCP = Rate_Card_Master[Partner_Entity_Name == getTransInfo.Partner_Entity_Name];
if(getCP.count() > 0)
{
Content = "<a href='https://creatorapp.zohopublic.in/centralisedprocurement_usdcglobal/usdc1/report-perma/Transactions_Status/ZpWz5PETb5DNQJuNmJHRxJmPvTtxJnr194fJAF5SgQDyQdymhZA3tj955m5eOFgXFhKWyWh57O8tWNw3WGDj4XYVEGfdCYP2P79G?ID=" + getTransInfo.ID + "'>Click here to View</a>";
sendmail
[
from :zoho.adminuserid
to :"vimal@techvaria.com"
subject :"Review Transaction"
message :"Dear " + getCP.Partner_Entity_Name + ",<br><br>Your Accumulated Commission Calculation was successful.<br><br>Please take a moment to review the details and let us know if you have any questions or concerns.<br><br>" + Content + "<br><br>If you require further information or clarification, feel free to reach out to us.<br><br>Best Regards,<br>Team"
]
}
}
}
}



Comments