protected void Payments() { iDB.Communicate dbComm = new iDB.Communicate(); iBiz.FinPro.Transactions.Groups bTransG = new iBiz.FinPro.Transactions.Groups(); iBiz.FinPro.Transactions.Groups.objGroup objTransG = new iBiz.FinPro.Transactions.Groups.objGroup(); iBiz.FinPro.Transactions.Transact bTrans = new iBiz.FinPro.Transactions.Transact(); iBiz.FinPro.Transactions.Transact.objTransaction objTrans = new iBiz.FinPro.Transactions.Transact.objTransaction(); IDataReader idr = dbComm.SelectCMD("Select transGroupID, Sum(transAmount) as transAmount, max(transNarration) as transNarration, max(transCreatedOn) as transCreatedOn from fin_Transactions where transType=3 group by transGroupID"); if (idr != null) { while (idr.Read()) { int transGroupId = Convert.ToInt32(idr["transGroupId"]); objTransG.transGroupCreatedBy = 1; objTransG.transGroupCreatedOn = Convert.ToDateTime(idr["transCreatedOn"]); objTransG.transGroupForeNumber = bTransG.New_Group_Fore_Number(2, "INV", DateTime.Now); objTransG.transGroupID = transGroupId; objTransG.transGroupPrefixNo = 2; objTransG.transGroupPrefixString = "INV"; objTransG.transGroupStatus = 1; objTransG.transGroupTitle = "Invoice Created on " + objTransG.transGroupCreatedOn.ToString("MMM dd, yyyy"); objTransG.transGroupTotalAmount = Convert.ToDecimal(idr["transAmount"]); objTransG.transTransCount = 0; bTransG.Add(objTransG); } } idr = null; idr = dbComm.SelectCMD("SELECT * FROM [fin_Transactions] where (transType=3) and Not (transDrAccount is Null or transCrAccount is Null)"); if (idr != null) { while (idr.Read()) { int transId = Convert.ToInt32(idr["transId"]); iBiz.FinPro.Transactions.Transact.objTransaction objTempTrans = new iBiz.FinPro.Transactions.Transact.objTransaction(); objTrans = new iBiz.FinPro.Transactions.Transact.objTransaction(); objTrans = bTrans.Select(transId); objTempTrans = bTrans.Select(transId); objTrans.transCrAccount = null; //objTrans.transType = 2; objTempTrans.transDrAccount = null; //objTempTrans.transType = 2; bTrans.Update(objTrans); bTrans.Add(objTempTrans); } } }
protected void btnSubmitForm_Click(object sender, EventArgs e) { if (Page.IsValid) { // Check for Financial Year Lock <<<<<<<<<<<<<<< iBiz.FinPro.FinYears finyear = new iBiz.FinPro.FinYears(); if (!finyear.isLock(Convert.ToDateTime(tbDate.Text))) { iBiz.FinPro.Transactions.Groups bTransGroup = new iBiz.FinPro.Transactions.Groups(); iBiz.FinPro.Transactions.Transact bTrans = new iBiz.FinPro.Transactions.Transact(); iBiz.FinPro.Transactions.Transact.objTransaction objTrans; iBiz.FinPro.Transactions.Groups.objGroup objTransGroup = new iBiz.FinPro.Transactions.Groups.objGroup(); iBiz.FinPro.Accounts bAcc = new iBiz.FinPro.Accounts(); int defaultDept = Convert.ToInt32(ddlDefautlDept.SelectedValue); int itemsCount = 0; decimal totalAmount = 0; //decimal totalCredit = 0; //decimal uTotalDebit = 0; //decimal uTotalCredit = 0; bool hasNoDepartment = false; int finYear = DateTime.Now.Year; DateTime selectedDate = DateTime.Now; if (selectedDate.Month < 6) { finYear = finYear - 1; } DateTime financialYear = Convert.ToDateTime("07/01/" + finYear.ToString()); bTrans.Delete_Untagged(thisUser); if (rptVoucherItems.Items.Count > 0) { foreach (RepeaterItem item in rptVoucherItems.Items) { foreach (Control ctrlItem in item.Controls) { if (ctrlItem is HiddenField) { if (ctrlItem.ClientID.ToLower().Contains("hfitemno")) { string itemNo, transId, drAccountId, crAccountId, deptId, description, additionalTransId, amount; HiddenField hfINo = (HiddenField)ctrlItem; RadComboBox ddlDebitAccounts = (RadComboBox)Form.FindControl(hfINo.UniqueID.Replace("hfItemNo", "ddlDebitAccounts")); RadComboBox ddlCreditAccounts = (RadComboBox)Form.FindControl(hfINo.UniqueID.Replace("hfItemNo", "ddlCreditAccount")); DropDownList ddlDepts = (DropDownList)Form.FindControl(hfINo.UniqueID.Replace("hfItemNo", "ddlDept")); TextBox tbDescription = (TextBox)Form.FindControl(hfINo.UniqueID.Replace("hfItemNo", "tbDescription")); TextBox tbAmount = (TextBox)Form.FindControl(hfINo.UniqueID.Replace("hfItemNo", "tbAmount")); HiddenField hfTransId = (HiddenField)Form.FindControl(hfINo.UniqueID.Replace("hfItemNo", "hfTransID")); HiddenField hfAdditionalTransId = (HiddenField)Form.FindControl(hfINo.UniqueID.Replace("hfItemNo", "hfAdditionalTransId")); iBiz.FinPro.Accounts.objAccount objAcc = new iBiz.FinPro.Accounts.objAccount(); itemNo = hfINo.Value; transId = hfTransId.Value; drAccountId = ddlDebitAccounts.SelectedValue != null ? ddlDebitAccounts.SelectedValue : ""; crAccountId = ddlCreditAccounts.SelectedValue != null ? ddlCreditAccounts.SelectedValue : ""; deptId = ddlDepts.SelectedValue; description = tbDescription.Text; amount = tbAmount.Text; additionalTransId = hfAdditionalTransId.Value; decimal transAmount = 0; decimal.TryParse(amount, out transAmount); if (transAmount > 0) { if (transId != "0") { // Delete existing trans if (iBiz.FinPro.Rights.edit_vouchar) { bTrans.Delete(Convert.ToInt32(transId)); } } if (hasNoDepartment || (Convert.ToInt32(deptId) <= 0 && defaultDept == 0)) { hasNoDepartment = true; } //Check for Additional Trans if (!string.IsNullOrEmpty(additionalTransId)) { if (additionalTransId != "0") { iBiz.FinPro.Modules.AdditionalTransactions bAdditionalTrans = new iBiz.FinPro.Modules.AdditionalTransactions(); bAdditionalTrans.Do_Transactions_For_Predefined(0, Convert.ToInt32(additionalTransId), transAmount, "Description", transAmount, moduleId, financialYear, selectedDate, thisUser, Convert.ToInt32(deptId)); } } if (!string.IsNullOrEmpty(drAccountId)) { if (Convert.ToInt32(drAccountId) > 0) { //Debit Transaction objTrans = new iBiz.FinPro.Transactions.Transact.objTransaction(); objTrans.transAmount = transAmount; objTrans.transDrAccount = Convert.ToInt32(drAccountId); objTrans.transCrAccount = null; objTrans.transSystemRestrict = false; objTrans.transCreatedBy = thisUser; objTrans.transCreatedOn = DateTime.Now; objTrans.transGroupID = 0; objTrans.transIsCompound = true; objTrans.transNarration = description; objTrans.transStatus = 1; objTrans.transSystemIndex = 1; objTrans.deptId = Convert.ToInt32(deptId); if (deptId == "0") { objTrans.deptId = defaultDept; } objTrans.transType = 1; objTrans.transUpdatedBy = thisUser; objTrans.transUpdatedOn = DateTime.Now; bTrans.Add(objTrans); itemsCount++; } } if (!string.IsNullOrEmpty(crAccountId)) { if (Convert.ToInt32(crAccountId) > 0) { //Credit Transaction objTrans = new iBiz.FinPro.Transactions.Transact.objTransaction(); objTrans.transAmount = transAmount; objTrans.transDrAccount = null; objTrans.transCrAccount = Convert.ToInt32(crAccountId); objTrans.transSystemRestrict = false; objTrans.transCreatedBy = thisUser; objTrans.transCreatedOn = DateTime.Now; objTrans.transGroupID = 0; objTrans.transIsCompound = true; objTrans.transNarration = description; objTrans.transStatus = 1; objTrans.transSystemIndex = 1; objTrans.deptId = Convert.ToInt32(deptId); if (deptId == "0") { objTrans.deptId = defaultDept; } objTrans.transType = 1; objTrans.transUpdatedBy = thisUser; objTrans.transUpdatedOn = DateTime.Now; bTrans.Add(objTrans); totalAmount += Convert.ToDecimal(amount); itemsCount++; } } } else { // Delete existing trans if (iBiz.FinPro.Rights.edit_vouchar) { bTrans.Delete(Convert.ToInt32(transId)); } } } } } } if (itemsCount > 0) { int groupID = 0; if (true) { if (!hasNoDepartment) { string fullVoucharNo = "N/A"; objTransGroup.transGroupCreatedBy = thisUser; objTransGroup.transGroupCreatedOn = selectedDate; objTransGroup.transGroupForeNumber = bTransGroup.New_Group_Fore_Number(moduleId, short_Title, objTransGroup.transGroupCreatedOn); objTransGroup.transGroupPrefixNo = moduleId; objTransGroup.transGroupPrefixString = short_Title; objTransGroup.transGroupStatus = 1; objTransGroup.transGroupTitle = tbDescription.Text.Trim(); objTransGroup.transGroupTotalAmount = totalAmount; objTransGroup.transTransCount = itemsCount; objTransGroup.transGroupIsOfficial = 1; objTransGroup.transGroupOfficialTotalAmount = totalAmount; objTransGroup.transGroupRefId = tbRefId.Text; objTransGroup.transCField1 = tbCustomValue1.Text; objTransGroup.transCField2 = tbCustomValue2.Text; objTransGroup.transCField3 = tbCustomValue3.Text; objTransGroup.transCField4 = tbCustomValue4.Text; fullVoucharNo = objTransGroup.transGroupPrefixNo.ToString() + short_Title + objTransGroup.transGroupForeNumber.ToString(); groupID = bTransGroup.Add(objTransGroup).Value; // Upload Attachments iBiz.FinPro.Transactions.Attachments bTransAtt = new iBiz.FinPro.Transactions.Attachments(); if (groupID > 0) { if (radSyncAttachments.UploadedFiles.Count > 0) { for (int i = 0; i < radSyncAttachments.UploadedFiles.Count; i++) { string guid = Guid.NewGuid().ToString(); string fileExt = radSyncAttachments.UploadedFiles[i].GetExtension(); radSyncAttachments.UploadedFiles[i].SaveAs(Server.MapPath("~/Attachments/") + guid + fileExt, true); iBiz.FinPro.Transactions.Attachments.objAttachment objTranAtt = new iBiz.FinPro.Transactions.Attachments.objAttachment(); objTranAtt.attachmentMaskedFileName = guid + fileExt; objTranAtt.attachmentOriginalFileName = radSyncAttachments.UploadedFiles[i].FileName; objTranAtt.transGroupID = groupID; bTransAtt.Add(objTranAtt); } } } bTrans.Update_Group(thisUser, 0, groupID); bTrans.Update_Group(thisUser, -1, groupID); rnNotify.Show("Vouchar has been Created.<br /><br />Vouchar No. is " + fullVoucharNo + "<br /><br />"); // Look for Additional Items iBiz.FinPro.Modules.AdditionalTransactions bAT = new iBiz.FinPro.Modules.AdditionalTransactions(); ControlCollection ctrlAdditionalItems = rptVoucherItems.Controls[rptVoucherItems.Controls.Count - 1].Controls; foreach (Control ctrlItem in ctrlAdditionalItems) { if (ctrlItem.ClientID.Contains("rptAdditionalItems")) { Repeater rptAdditionalItems = (Repeater)ctrlItem; foreach (RepeaterItem item in rptAdditionalItems.Items) { foreach (Control ctrlHFID in item.Controls) { if (ctrlHFID is HiddenField) { if (ctrlHFID.ClientID.Contains("hfAdditionalTransId")) { HiddenField hfAdditionalItem = (HiddenField)ctrlHFID; TextBox tbAdditionalDescription = (TextBox)Form.FindControl(hfAdditionalItem.UniqueID.Replace("hfAdditionalTransId", "tbAdditionalDescription")); TextBox tbAdditionalAmount = (TextBox)Form.FindControl(hfAdditionalItem.UniqueID.Replace("hfAdditionalTransId", "tbAddiotionalAmount")); decimal additionalAmount; if (decimal.TryParse(tbAdditionalAmount.Text.Trim().Replace("%", ""), out additionalAmount)) { bAT.Do_Transactions(groupID, Convert.ToInt32(hfAdditionalItem.Value), additionalAmount, tbAdditionalDescription.Text, totalAmount, selectedDate, thisUser); } } } } } } } } else { bTrans.Delete_Untagged(thisUser); rnNotify.Show("You must assign department to all items."); } } } else { //imbalanced Debit and Credit bTrans.Delete_Untagged(thisUser); if (itemsCount == 0) { bTrans.Delete_Untagged(thisUser); rnNotify.Show("No valid transaction found."); } else { bTrans.Delete_Untagged(thisUser); rnNotify.Show("Debit and Credit sides are not equal."); } } } } else { rnNotify.Show("Financial year is locked."); } } }
public void Do_Transactions_For_Predefined(int transGroupID, int additionalTransID, decimal amount, string description, decimal totalAmount, int moduleId, DateTime financial_Year, DateTime transCreatedOn, int transCreatedBy, int deptId) { IDataReader idr = dbComm.SelectCMD(string.Format("select * from fin_AdditionalAutoTrans where autoTransIsSeparateVouchar=0 and additionalTransID={0} and autoTransIsPredefinedItem=0", additionalTransID)); Transactions.Transact bTrans = new Transactions.Transact(); Transactions.Transact.objTransaction objTrans; if (idr != null) { while (idr.Read()) { objTrans = new Transactions.Transact.objTransaction(); bool autoTransIsOfficial = Convert.ToBoolean(idr["autoTransIsOfficial"]); string transNarration = idr["autoTransNarration"].ToString(); int accountId = Convert.ToInt32(idr["autoTransAccountId"]); bool doDebit = Convert.ToBoolean(idr["autoTransIsDebit"]); decimal transAmountMulti = Convert.ToDecimal(idr["autoTransAmountMultiplier"]); if (doDebit) { objTrans.transDrAccount = accountId; } else { objTrans.transCrAccount = accountId; } if (autoTransIsOfficial) { objTrans.transSystemIndex = 2; objTrans.transSystemRestrict = false; } else { objTrans.transSystemIndex = 1; } objTrans.transNarration = transNarration; objTrans.transAmount = amount * transAmountMulti; objTrans.transCreatedBy = transCreatedBy; objTrans.transCreatedOn = transCreatedOn; objTrans.transGroupID = transGroupID; objTrans.transInvoiceID = transGroupID; objTrans.transIsCompound = true; objTrans.transParticipantID = 1; objTrans.transRefID = "1"; objTrans.transStatus = 1; objTrans.transType = 2; objTrans.transUpdatedBy = transCreatedBy; objTrans.transUpdatedOn = DateTime.Now; objTrans.deptId = deptId; bTrans.Add(objTrans); } } IDataReader idrGroups = dbComm.SelectCMD(string.Format("select distinct(autoTransSeparateID) from fin_AdditionalAutoTrans where autoTransIsSeparateVouchar=1 and additionalTransID={0} and autoTransIsPredefinedItem=0", additionalTransID)); if (idrGroups != null) { while (idrGroups.Read()) { int autoTransSeparateID = Convert.ToInt32(idrGroups["autoTransSeparateID"]); bool hasTransactions = false; decimal totalDrAmount = 0; decimal totalCrAmount = 0; int transCount = 0; idr = dbComm.SelectCMD(string.Format("select * from fin_AdditionalAutoTrans where autoTransIsSeparateVouchar=1 and additionalTransID={0} and autoTransSeparateID={1} and autoTransIsPredefinedItem=0", additionalTransID, autoTransSeparateID)); if (idr != null) { while (idr.Read()) { objTrans = new Transactions.Transact.objTransaction(); bool autoTransIsOfficial = Convert.ToBoolean(idr["autoTransIsOfficial"]); string transNarration = idr["autoTransNarration"].ToString(); int accountId = Convert.ToInt32(idr["autoTransAccountId"]); bool doDebit = Convert.ToBoolean(idr["autoTransIsDebit"]); decimal transAmountMulti = Convert.ToDecimal(idr["autoTransAmountMultiplier"]); objTrans.transAmount = amount * transAmountMulti; if (doDebit) { objTrans.transDrAccount = accountId; totalDrAmount += objTrans.transAmount; } else { objTrans.transCrAccount = accountId; totalCrAmount += objTrans.transAmount; } if (autoTransIsOfficial) { objTrans.transSystemIndex = 2; objTrans.transSystemRestrict = false; } else { objTrans.transSystemIndex = 1; } objTrans.transNarration = transNarration; objTrans.transCreatedBy = transCreatedBy; objTrans.transCreatedOn = transCreatedOn; objTrans.transGroupID = -1; objTrans.transInvoiceID = transGroupID; objTrans.transIsCompound = true; objTrans.transParticipantID = 1; objTrans.transRefID = transGroupID.ToString(); objTrans.transStatus = 1; objTrans.transType = 3; objTrans.transUpdatedBy = transCreatedBy; objTrans.transUpdatedOn = DateTime.Now; objTrans.deptId = deptId; bTrans.Add(objTrans); hasTransactions = true; transCount++; } if (hasTransactions && totalCrAmount == totalDrAmount) { int groupID; string transGroupPrefixString = "AUT"; int transGroupPrefixNo = 7; string transGroupTitle = "Auto Transaction"; iBiz.FinPro.Transactions.Groups.objGroup objTransGroup = new iBiz.FinPro.Transactions.Groups.objGroup(); iBiz.FinPro.Transactions.Groups bTransGroup = new iBiz.FinPro.Transactions.Groups(); idr = null; idr = dbComm.SelectCMD(string.Format("select * from fin_AdditionalAutoTransGroup where atgID={0}", autoTransSeparateID)); while (idr.Read()) { transGroupPrefixString = idr["transGroupPrefixString"].ToString(); transGroupPrefixNo = Convert.ToInt32(idr["transGroupPrefixNo"]); transGroupTitle = idr["transGroupTitle"].ToString(); } objTransGroup.transGroupCreatedBy = transCreatedBy; objTransGroup.transGroupCreatedOn = transCreatedOn; objTransGroup.transGroupForeNumber = bTransGroup.New_Group_Fore_Number(moduleId, transGroupPrefixString, objTransGroup.transGroupCreatedOn); objTransGroup.transGroupPrefixNo = 7; objTransGroup.transGroupPrefixString = transGroupPrefixString; objTransGroup.transGroupStatus = 1; objTransGroup.transGroupTitle = transGroupTitle; objTransGroup.transGroupTotalAmount = totalCrAmount; objTransGroup.transTransCount = transCount; objTransGroup.transLinkedToGroup = 0; groupID = bTransGroup.Add(objTransGroup).Value; bTrans.Update_Group(transCreatedBy, -1, groupID); } } } } }
protected void Import_Sales() { iDB.Communicate dbComm = new iDB.Communicate(); iBiz.FinPro.Transactions.Groups bTransG = new iBiz.FinPro.Transactions.Groups(); iBiz.FinPro.Transactions.Groups.objGroup objTransG = new iBiz.FinPro.Transactions.Groups.objGroup(); iBiz.FinPro.Transactions.Transact bTrans = new iBiz.FinPro.Transactions.Transact(); iBiz.FinPro.Transactions.Transact.objTransaction objTrans = new iBiz.FinPro.Transactions.Transact.objTransaction(); IDataReader idr = dbComm.SelectCMD("Select transGroupID, Sum(transAmount) as transAmount, max(transNarration) as transNarration, max(transCreatedOn) as transCreatedOn, max(transParticipantID) as transParticipantID from fin_Transactions where (transParticipantID=8 or transParticipantID=13) group by transGroupID"); if (idr != null) { while (idr.Read()) { int transGroupId = Convert.ToInt32(idr["transGroupId"]); string branch = ""; if (idr["transParticipantID"].ToString().Trim() == "8") { branch = "DHA - "; } else { branch = "Gujrat - "; } objTransG.transGroupCreatedBy = 1; objTransG.transGroupCreatedOn = Convert.ToDateTime(idr["transCreatedOn"]); objTransG.transGroupForeNumber = bTransG.New_Group_Fore_Number(4, "SAL", DateTime.Now); objTransG.transGroupID = transGroupId; objTransG.transGroupPrefixNo = 4; objTransG.transGroupPrefixString = "SAL"; objTransG.transGroupStatus = 1; objTransG.transGroupTitle = branch + "Sales Made on " + objTransG.transGroupCreatedOn.ToString("MMM dd, yyyy"); objTransG.transGroupTotalAmount = Convert.ToDecimal(idr["transAmount"]); objTransG.transTransCount = 0; bTransG.Add(objTransG); } } idr = null; idr = dbComm.SelectCMD("SELECT * FROM [fin_Transactions] where (transParticipantID=8 or transParticipantID=13) and Not (transDrAccount is Null or transCrAccount is Null)"); if (idr != null) { while (idr.Read()) { int transId = Convert.ToInt32(idr["transId"]); iBiz.FinPro.Transactions.Transact.objTransaction objTempTrans = new iBiz.FinPro.Transactions.Transact.objTransaction(); objTrans = new iBiz.FinPro.Transactions.Transact.objTransaction(); objTrans = bTrans.Select(transId); objTempTrans = bTrans.Select(transId); objTrans.transCrAccount = null; objTrans.transType = 44; objTempTrans.transDrAccount = null; objTempTrans.transType = 44; bTrans.Update(objTrans); bTrans.Add(objTempTrans); } } idr = null; idr = dbComm.SelectCMD("SELECT * FROM [fin_Transactions] where (transParticipantID=8 or transParticipantID=13)"); if (idr != null) { while (idr.Read()) { int transId = Convert.ToInt32(idr["transId"]); iBiz.FinPro.Transactions.Transact.objTransaction objTempTrans = new iBiz.FinPro.Transactions.Transact.objTransaction(); objTrans = new iBiz.FinPro.Transactions.Transact.objTransaction(); objTrans = bTrans.Select(transId); objTrans.transType = 44; bTrans.Update(objTrans); } } }