void Integrations_to_books.AccountsToBooks_New(int accid)
{
account_data = Account_Master[ID == input.accid];
fetorg = Organization_Master[Organization_Code == account_data.Organization_Name.Organization_Code];
orgid = fetorg.Organization_Code;
fetapp = Approval[Account_ID.Account_ID == account_data.Account_ID];
//main map
custom_map = Map();
custom_map.put("address",account_data.Address.address_line_1);
custom_map.put("street2",account_data.Address.address_line_2);
custom_map.put("city",account_data.Address.district_city);
custom_map.put("state",account_data.Address.state_province);
custom_map.put("country",account_data.Address.country);
custom_map.put("zip",account_data.Address.postal_Code);
//main mapping
main_map = Map();
main_map.put("phone",account_data.Account_Number);
main_map.put("contact_name",account_data.Account_Name);
main_map.put("company_name",account_data.Account_Name);
main_map.put("billing_address",custom_map);
main_map.put("shipping_address",custom_map);
main_map.put("email",account_data.Account_Mail);
main_map.put("contact_type","customer");
cont_list = List();
primary_cont_pers = Map();
primary_cont_pers.put("first_name",account_data.Account_Name);
primary_cont_pers.put("phone",account_data.Account_Number);
// primary_cont_pers.put("email",account_data.Account_Mail);
cont_list.add(primary_cont_pers);
//secndary Contact persons updated.
if(account_data.Contact_Person_Details != null)
{
for each contacts_val in account_data.Contact_Person_Details
{
cont_pers = Map();
cont_pers.put("first_name",contacts_val.Contact_Person);
cont_pers.put("phone",contacts_val.Phone_Number);
// cont_pers.put("email",contacts_val.Email);
cont_pers.put("designation",contacts_val.Designation);
cont_pers.put("department",contacts_val.Department.Department);
cont_list.add(cont_pers);
}
}
main_map.put("contact_persons",cont_list);
app = Approval[Organization_Name == fetapp.Organization_Name && Account_ID == fetapp.Account_ID];
if(fetapp.Do_you_want_to_create_Customer_Vendor_for_other_organization == "Yes")
{
for each rec in app.Organization_Name
{
org = rec.Organization_Code;
info org;
info rec.Organization_Name;
resp = zoho.books.createRecord("contacts",org,main_map,"books");
info "else books response " + resp;
res_code = resp.get("code").toLong();
if(res_code == 0)
{
for each vart1 in account_data.Account_Master_Books_Details
{
if(vart1.Organization_Name == rec && vart1.Type_field == "Customer")
{
books_id = resp.toMap().get("contact").toMap().get("contact_id");
vart1.Books_ID=books_id;
info books_id;
}
}
contact_person_list = List();
contact_person_list = resp.toMap().get("contact").toMap().get("contact_persons").toList();
for each contacts_1 in contact_person_list
{
contact_rec = contacts_1.toMap();
contact_person_id = contact_rec.get("contact_person_id");
for each cont in account_data.Contact_Person_Details
{
cont.Contact_Person_Booksid=contact_person_id;
updateContactPersonID = Contact_Person_Details[Account_Master_ID == input.accid];
if(updateContactPersonID.count() > 0)
{
updateContactPersonID.Contact_Person_Booksid=contact_person_id;
}
}
}
}
if(0 == resp.get("code"))
{
contect_Data = resp.get("contact");
zbid = contect_Data.get("contact_id");
ins = insert into Account_Master_Books_Details
[
Type_field="Customer"
Added_User=zoho.loginuser
Organization_Name=rec.ID
Account_Master_ID=account_data.ID
Organization_Code=rec.ID
Books_ID=zbid
];
}
}
}
else
{
resp = zoho.books.createRecord("contacts",orgid,main_map,"books");
info "Create Books " + resp;
res_code = resp.get("code").toLong();
if(res_code == 0)
{
for each rec1 in app.Organization_Name
{
contect_Data = resp.get("contact");
zbid = contect_Data.get("contact_id");
ins = insert into Account_Master_Books_Details
[
Type_field="Customer"
Added_User=zoho.loginuser
Organization_Name=rec1.ID
Account_Master_ID=account_data.ID
Organization_Code=rec1.ID
Books_ID=zbid
];
}
for each vart in account_data.Account_Master_Books_Details
{
if(app.Organization_Name.contains(vart.Organization_Name) == true && vart.Type_field == "Customer")
{
books_id = resp.toMap().get("contact").toMap().get("contact_id");
vart.Books_ID=books_id;
info books_id;
}
}
contact_person_list = List();
contact_person_list = resp.toMap().get("contact").toMap().get("contact_persons").toList();
for each contacts_1 in contact_person_list
{
contact_rec = contacts_1.toMap();
contact_person_id = contact_rec.get("contact_person_id");
for each cont in account_data.Contact_Person_Details
{
cont.Contact_Person_Booksid=contact_person_id;
updateContactPersonID = Contact_Person_Details[Account_Master_ID == input.accid];
if(updateContactPersonID.count() > 0)
{
updateContactPersonID.Contact_Person_Booksid=contact_person_id;
}
}
}
}
}
}
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter