You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
DS7/DSWeb/CW/CwVouchersAddingDo.aspx.cs

5414 lines
397 KiB
C#

2 years ago
using System;
using System.Collections;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using DSWeb.EntityDA;
using DSWeb.Models;
using JsonHelper;
using System.Xml;
namespace DSWeb.CW
{
public partial class CwVouchersAddingDo : System.Web.UI.Page
{
public string strGIDS = "";
T_ALL_DA T_ALL_DA = new T_ALL_DA();
public string strUserID;//用户GID
public string strCompanyID;//公司GID
public string strShowName;//用户显示名
public string strDeptName;//部门名称
protected void Page_Load(object sender, EventArgs e)
{
if (Session["USERID"] != null)
{
strUserID = Session["USERID"].ToString().Trim();
this.hdUserID.Value = strUserID.Trim();
}
else
{
Server.Transfer("~/Error/FriendError.aspx");
return;
}
if (Session["SHOWNAME"] != null)
{
strShowName = Session["SHOWNAME"].ToString();
}
if (Session["COMPANYID"] != null)
{
strCompanyID = Session["COMPANYID"].ToString();
}
if (Session["DEPTNAME"] != null)
{
strDeptName = Session["DEPTNAME"].ToString();
}
if (Request.QueryString["gids"] != null)
{
strGIDS = Request.QueryString["gids"].ToString().Trim().ToLower();
}
//grid
if (!IsPostBack)
{
this.hd_comboPREPARED.Value = strShowName.Trim();
tbVOUDATE.Text = T_ALL_DA.GetStrSQL("rq", "select convert(char(10),getdate(),20) as rq");
tbRATE.Text = T_ALL_DA.GetStrSQL("VALUE", "select top 1 isnull(VALUE,1) as VALUE from currency_exchange where COMPANYID='" + strCompanyID + "' and ISDELETE=0 and [type]='common'");
}
//加载下拉框
Page.ClientScript.RegisterStartupScript(this.GetType(), "key0", "<script>initcomboPREPARED();</script>");
}
protected String getgid()
{
string strgid = Guid.NewGuid().ToString();
strgid = strgid.Replace("-", "");
strgid = "VOU" + strgid;
return strgid;
}
protected void btnEnter_Click(object sender, EventArgs e)
{
string sSQL = "";
int iResult = 0;
string zt = "";
if (cbISRATE.Checked == false && tbRATE.Text.Trim() == "")
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "key1", "<script>alert('如果不“按照系统录入汇率”计算,则“凭证美元汇率”不允许为空!');</script>");
return;
}
//
if (strGIDS.Trim() != "")
{
//帐套设置
sSQL = "SELECT top 1 * from cw_design";
DataSet dsCwDesign = T_ALL_DA.GetAllSQL(sSQL);
if (dsCwDesign == null)
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "key1", "<script>alert('请先设置帐套信息!');</script>");
return;
}
//
string sGids = strGIDS.Trim().Replace(",", "','");
sGids = "'" + sGids.Trim() + "'";
//合并生成结算凭证
if (dsCwDesign.Tables[0].Rows[0]["ISMGSC"].ToString().Trim() == "True")
{
iResult = getSC(dsCwDesign, sGids.Trim(), "", cbISRATE.Checked, cbButtSettlement.Checked, tbVOUDATE.Text.Trim(), this.hd_comboPREPARED.Value.Trim(), tbRATE.Text.Trim());//, strEXPLAN, ds1.Tables[0].Rows[0]["DEPTID"].ToString().Trim(), ds1.Tables[0].Rows[0]["EMPLID"].ToString().Trim(), ds1.Tables[0].Rows[0]["SALE"].ToString().Trim());
zt += "," + iResult;
}
else
{
string[] items = sGids.Trim().Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
if (items.Length > 0)
{
for (int i = 0; i < items.Length; i++)
{
iResult = getSC(dsCwDesign, items[i].ToString().Trim(), "", cbISRATE.Checked, cbButtSettlement.Checked, tbVOUDATE.Text.Trim(), this.hd_comboPREPARED.Value.Trim(), tbRATE.Text.Trim());//, strEXPLAN, ds1.Tables[0].Rows[0]["DEPTID"].ToString().Trim(), ds1.Tables[0].Rows[0]["EMPLID"].ToString().Trim(), ds1.Tables[0].Rows[0]["SALE"].ToString().Trim());
zt += "," + iResult;
}
}
}
//
if (zt.IndexOf("-") > 0)
{
Response.Write("<script>alert('部分凭证生成出错!');history.back();</script>");
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "key3", "<script>alert('生成凭证成功!');window.opener.location.reload();window.close();history.back();</script>");
}
}
}
/// <summary>
/// 生成凭证
/// </summary>
/// <param name="dsCwDesign">帐套设置数据集</param>
/// <param name="sGids">gid业务编号</param>
/// <param name="strVESSEL">船名航次</param>
/// <param name="ISRATE">是否按照系统录入汇率</param>
/// <param name="isButtSettlement">是否对抵结算是否生成银行账款</param>
/// <param name="sVOUDATE">凭证日期</param>
/// <param name="sPREPARED">制单人</param>
/// <param name="dlRATE">自定义汇率</param>
/// <param name="strEXPLAN">规则生成的摘要</param>
/// <returns></returns>
public int getSC(DataSet dsCwDesign, string sGids, string strVESSEL, bool ISRATE, bool isButtSettlement, string sVOUDATE, string sPREPARED, string dlRATE)//, string strEXPLAN, string strDEPTID, string strEMPLID, string strSALE)
{
#region 基本变量
//全部
string sSQL = "";
string sSQL_Y = "";
string sSQL_Z = "";
string strEXPLAN = "";
int iResult = 0;
int n = 0;
Decimal dEXCHANGERATE =0;
//应收应付账款
Decimal iAMTDR = 0;
Decimal iAMTCR = 0;
//差额主营业务收入
Decimal dRMBS = 0;
Decimal dRMBF = 0;
Decimal dUSDS = 0;
Decimal dUSDF = 0;
//总合计
Decimal strJie = 0;
Decimal strDai = 0;
string ls = "";
string strBPVW = dsCwDesign.Tables[0].Rows[0]["TVW"].ToString().Trim();
#endregion
#region 其他常用科目设置
//其他常用科目设置 应收RMB
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["AR"].ToString().Trim() + "'";
DataSet dsAR = T_ALL_DA.GetAllSQL(sSQL);
//其他常用科目设置 应收USD
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["ARFC"].ToString().Trim() + "'";
DataSet dsARFC = T_ALL_DA.GetAllSQL(sSQL);
//其他常用科目设置 应付RMB
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["AP"].ToString().Trim() + "'";
DataSet dsAP = T_ALL_DA.GetAllSQL(sSQL);
//其他常用科目设置 应付USD
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["APFC"].ToString().Trim() + "'";
DataSet dsAPFC = T_ALL_DA.GetAllSQL(sSQL);
//其他常用科目设置 付费结算借方默认科目代码
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["APMBSPENDING"].ToString().Trim() + "'";
DataSet dsAPMBSPENDING = T_ALL_DA.GetAllSQL(sSQL);
//其他常用科目设置 付费结算外币借方默认科目代码
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["APTMSFC"].ToString().Trim() + "'";
DataSet dsAPTMSFC = T_ALL_DA.GetAllSQL(sSQL);
//其他常用科目设置 预收账款
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["DR"].ToString().Trim() + "'";
DataSet dsDR = T_ALL_DA.GetAllSQL(sSQL);
//其他常用科目设置 预收账款外币
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["DRFC"].ToString().Trim() + "'";
DataSet dsDRFC = T_ALL_DA.GetAllSQL(sSQL);
//其他常用科目设置 预付账款
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["CR"].ToString().Trim() + "'";
DataSet dsCR = T_ALL_DA.GetAllSQL(sSQL);
//其他常用科目设置 预付账款外币
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["CRFC"].ToString().Trim() + "'";
DataSet dsCRFC = T_ALL_DA.GetAllSQL(sSQL);
//其他常用科目设置 汇兑损益
sSQL = "SELECT top 1 * from cw_accitems where ACCID='" + dsCwDesign.Tables[0].Rows[0]["EGOL"].ToString().Trim() + "'";
DataSet dsEGOL = T_ALL_DA.GetAllSQL(sSQL);
#endregion
#region 摘要
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strISEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAR = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAR"].ToString().Trim();
string sRPEXPLANAP = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAP"].ToString().Trim();
//if (sRPEXPLANAR.IndexOf("《结算单位》") > -1 || sRPEXPLANAP.IndexOf("《结算单位》") > -1)
//{
// strISEXPLAN += ",CUSTOMERNAME";
//}
if (sRPEXPLANAR.IndexOf("《委托编号》") > -1 || sRPEXPLANAP.IndexOf("《委托编号》") > -1)
{
strISEXPLAN += ",CUSTNO";
}
if (sRPEXPLANAR.IndexOf("《主提单号》") > -1 || sRPEXPLANAP.IndexOf("《主提单号》") > -1)
{
strISEXPLAN += ",MBLNO";
}
if (sRPEXPLANAR.IndexOf("《船名》") > -1 || sRPEXPLANAP.IndexOf("《船名》") > -1)
{
strISEXPLAN += ",VESSEL";
}
if (sRPEXPLANAR.IndexOf("《航次》") > -1 || sRPEXPLANAP.IndexOf("《航次》") > -1)
{
strISEXPLAN += ",VOYNO";
}
if (sRPEXPLANAR.IndexOf("《申请单号》") > -1 || sRPEXPLANAP.IndexOf("《申请单号》") > -1)
{
strISEXPLAN += ",BILLNO_ACAD";
}
if (sRPEXPLANAR.IndexOf("《委托单位》") > -1 || sRPEXPLANAP.IndexOf("《委托单位》") > -1)
{
strISEXPLAN += ",BS_CUSTOMERNAME";
}
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strISEXPLAN += ",CUSTNO";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strISEXPLAN += ",MBLNO";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strISEXPLAN += ",VESSEL";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strISEXPLAN += ",VOYNO";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strISEXPLAN += ",BILLNO_ACAD";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strISEXPLAN += ",BS_CUSTOMERNAME";
}
}
#endregion
#region 基本数据集
string strORDNO = getgid();
CwVouchersDA CwVouchersDA = new CwVouchersDA();
IList<CwVouitemsEntity> CwVouitemsEntities = new List<CwVouitemsEntity>();
//
//(CASE WHEN FEETYPE = 1 THEN '应收账款' ELSE '应付账款' END) as 类型
//,CUSTOMERNAME 客户名称
//,EXCHANGERATE 汇率
//,CURRENCY 币别`
//,ISADVANCEDPAY 是否垫付
//,SUM(AMOUNT) AS 金额
//,SUM(AMOUNT*EXCHANGERATE) AS 合计金额
//是否按照系统录入汇率
string ISADVANCE = T_ALL_DA.GetStrSQL("ISADVANCE", "select top 1 ISADVANCE from subcomp_seae_def where CORPID='" + strCompanyID + "'");//是否在结算页面显示预收预付信息录入
if (ISRATE == true)
{
#region 应收应付
sSQL = "SELECT (CASE WHEN FEETYPE = 1 THEN '应收账款' WHEN FEETYPE=2 THEN '应付账款' ELSE '' END) as FEETYPE"
+ ",FAPCODE=(select top 1 FAPCODE from info_client where SHORTNAME=VW_ch_fee_settlement_do.CUSTOMERNAME)"
+ ",FARCODE=(select top 1 FARCODE from info_client where SHORTNAME=VW_ch_fee_settlement_do.CUSTOMERNAME)"
+ ",SETTLETYPE,CUSTOMERNAME,ORIGCURRENCY as CURRENCY,EXCHANGERATE"
+ ",SUM(ORIGAMOUNT) AS je"//AMOUNT
+ ",(case when (ORIGCURRENCY<>CURRENCY and CURRENCY='RMB') then sum(AMOUNT) else convert(decimal(18,2),round(SUM(ORIGAMOUNT*EXCHANGERATE),2)) end) AS hj"//
+ ",(ACCOUNTS_MONEY) AS ACCOUNTS_MONEY_JE"//记账资料_金额
+ ",convert(decimal(18,2),round((ACCOUNTS_MONEY*(case when ACCOUNTS_CURRENCY<>'RMB' AND ACCOUNTS_RATE=1 THEN EXCHANGERATE ELSE ACCOUNTS_RATE END)),2)) AS ACCOUNTS_MONEY_HJ"//记账资料_金额
+ ",(PREPAY_MONEY) AS PREPAY_MONEY_JE"//预付支资料_金额
+ ",convert(decimal(18,2),round((PREPAY_MONEY*(case when PREPAY_CURRENCY<>'RMB' AND PREPAY_RATE=1 THEN EXCHANGERATE ELSE PREPAY_RATE END)),2)) AS PREPAY_MONEY_HJ"//预付支资料_金额
+ ",(AHSR_MONEY) AS AHSR_MONEY_JE"//实付支资料_金额
+ ",convert(decimal(18,2),round((AHSR_MONEY*(case when AHSR_CURRENCY<>'RMB' AND AHSR_RATE=1 THEN EXCHANGERATE ELSE AHSR_RATE END)),2)) AS AHSR_MONEY_HJ"//实付支资料_金额
+ ",(FINANCIAL_MONEY) AS FINANCIAL_MONEY_JE"//财务费用_金额
+ ",convert(decimal(18,2),round((FINANCIAL_MONEY*(case when FINANCIAL_CURRENCY<>'RMB' AND FINANCIAL_RATE=1 THEN EXCHANGERATE ELSE FINANCIAL_RATE END)),2)) AS FINANCIAL_MONEY_HJ"//财务费用_金额
+ ",(ADVANCE_MONEY) AS ADVANCE_MONEY_JE"//预付支取用资料_金额
+ ",convert(decimal(18,2),round((ADVANCE_MONEY*(case when ADVANCE_CURRENCY<>'RMB' AND ADVANCE_RATE=1 THEN EXCHANGERATE ELSE ADVANCE_RATE END)),2)) AS ADVANCE_MONEY_HJ"//预付支取用资料_金额
+ ",ACCOUNTS_CURRENCY"//记账资料_币别
+ ",PREPAY_CURRENCY"//预付支资料_币别
+ ",AHSR_CURRENCY"//实付支资料_币别
+ ",FINANCIAL_CURRENCY"//财务费用_币别
+ ",ADVANCE_CURRENCY"//预付支取用资料_币别
+ ",(case when ACCOUNTS_CURRENCY<>'RMB' AND ACCOUNTS_RATE=1 THEN EXCHANGERATE ELSE ACCOUNTS_RATE END) as ACCOUNTS_RATE"//记账资料_汇率
+ ",(case when PREPAY_CURRENCY<>'RMB' AND PREPAY_RATE=1 THEN EXCHANGERATE ELSE PREPAY_RATE END) as PREPAY_RATE"//预付支资料_汇率
+ ",(case when AHSR_CURRENCY<>'RMB' AND AHSR_RATE=1 THEN EXCHANGERATE ELSE AHSR_RATE END) as AHSR_RATE"//实付支资料_汇率
+ ",(case when FINANCIAL_CURRENCY<>'RMB' AND FINANCIAL_RATE=1 THEN EXCHANGERATE ELSE FINANCIAL_RATE END) as FINANCIAL_RATE"//财务费用_汇率
+ ",(case when ADVANCE_CURRENCY<>'RMB' AND ADVANCE_RATE=1 THEN EXCHANGERATE ELSE ADVANCE_RATE END) as ADVANCE_RATE"//预付支取用资料_汇率
+ ",ACCOUNTRMB,ACCOUNTUSD" + strISEXPLAN
+" From VW_ch_fee_settlement_do WHERE 1=1 "
+ " and gid_s in (" + sGids.Trim() + ") " + strVESSEL
+ " GROUP BY FEETYPE,CUSTOMERNAME,EXCHANGERATE,CURRENCY,ORIGCURRENCY,SETTLETYPE,ACCOUNTRMB,ACCOUNTUSD,ACCOUNTS_CURRENCY,PREPAY_CURRENCY,AHSR_CURRENCY,FINANCIAL_CURRENCY,ADVANCE_CURRENCY,ACCOUNTS_RATE,PREPAY_RATE,AHSR_RATE,FINANCIAL_RATE,ADVANCE_RATE,ACCOUNTS_MONEY,PREPAY_MONEY,AHSR_MONEY,FINANCIAL_MONEY,ADVANCE_MONEY" + strISEXPLAN
+ " ORDER BY FEETYPE desc,ORIGCURRENCY,CUSTOMERNAME" + strISEXPLAN;//,CURRENCY
#endregion
#region 预收预付
sSQL_Y = "SELECT "
////+ "(CASE WHEN FEETYPE = 1 THEN '应收账款' WHEN FEETYPE=2 THEN '应付账款' ELSE '' END) as FEETYPE"
//+ "(CASE WHEN SUBSTRING(RIGHT(billno,12),0,3)='DR' THEN '应收账款' WHEN SUBSTRING(RIGHT(billno,12),0,3)='CR' THEN '应付账款' ELSE '' END) as FEETYPE"
+ "(CASE WHEN Billtype=1 THEN '应收账款' WHEN Billtype=2 THEN '应付账款' ELSE '' END) as FEETYPE"
+ ",FAPCODE=(select top 1 FAPCODE from info_client where SHORTNAME=VW_ch_fee_settlement_do.CUSTOMERNAME)"
+ ",FARCODE=(select top 1 FARCODE from info_client where SHORTNAME=VW_ch_fee_settlement_do.CUSTOMERNAME)"
+ ",SETTLETYPE,CUSTOMERNAME,CURRENCY,EXCHANGERATE"
+ ",(ACCOUNTS_MONEY) AS ACCOUNTS_MONEY_JE"//记账资料_金额
+ ",convert(decimal(18,2),round((ACCOUNTS_MONEY*(case when ACCOUNTS_CURRENCY<>'RMB' AND ACCOUNTS_RATE=1 THEN EXCHANGERATE ELSE ACCOUNTS_RATE END)),2)) AS ACCOUNTS_MONEY_HJ"//记账资料_金额
+ ",(PREPAY_MONEY) AS PREPAY_MONEY_JE"//预付支资料_金额
+ ",convert(decimal(18,2),round((PREPAY_MONEY*(case when PREPAY_CURRENCY<>'RMB' AND PREPAY_RATE=1 THEN EXCHANGERATE ELSE PREPAY_RATE END)),2)) AS PREPAY_MONEY_HJ"//预付支资料_金额
+ ",(AHSR_MONEY) AS AHSR_MONEY_JE"//实付支资料_金额
+ ",convert(decimal(18,2),round((AHSR_MONEY*(case when AHSR_CURRENCY<>'RMB' AND AHSR_RATE=1 THEN EXCHANGERATE ELSE AHSR_RATE END)),2)) AS AHSR_MONEY_HJ"//实付支资料_金额
+ ",(FINANCIAL_MONEY) AS FINANCIAL_MONEY_JE"//财务费用_金额
+ ",convert(decimal(18,2),round((FINANCIAL_MONEY*(case when FINANCIAL_CURRENCY<>'RMB' AND FINANCIAL_RATE=1 THEN EXCHANGERATE ELSE FINANCIAL_RATE END)),2)) AS FINANCIAL_MONEY_HJ"//财务费用_金额
+ ",(ADVANCE_MONEY) AS ADVANCE_MONEY_JE"//预付支取用资料_金额
+ ",convert(decimal(18,2),round((ADVANCE_MONEY*(case when ADVANCE_CURRENCY<>'RMB' AND ADVANCE_RATE=1 THEN EXCHANGERATE ELSE ADVANCE_RATE END)),2)) AS ADVANCE_MONEY_HJ"//预付支取用资料_金额
+ ",ACCOUNTS_CURRENCY"//记账资料_币别
+ ",PREPAY_CURRENCY"//预付支资料_币别
+ ",AHSR_CURRENCY"//实付支资料_币别
+ ",FINANCIAL_CURRENCY"//财务费用_币别
+ ",ADVANCE_CURRENCY"//预付支取用资料_币别
+ ",(case when ACCOUNTS_CURRENCY<>'RMB' AND ACCOUNTS_RATE=1 THEN EXCHANGERATE ELSE ACCOUNTS_RATE END) as ACCOUNTS_RATE"//记账资料_汇率
+ ",(case when PREPAY_CURRENCY<>'RMB' AND PREPAY_RATE=1 THEN EXCHANGERATE ELSE PREPAY_RATE END) as PREPAY_RATE"//预付支资料_汇率
+ ",(case when AHSR_CURRENCY<>'RMB' AND AHSR_RATE=1 THEN EXCHANGERATE ELSE AHSR_RATE END) as AHSR_RATE"//实付支资料_汇率
+ ",(case when FINANCIAL_CURRENCY<>'RMB' AND FINANCIAL_RATE=1 THEN EXCHANGERATE ELSE FINANCIAL_RATE END) as FINANCIAL_RATE"//财务费用_汇率
+ ",(case when ADVANCE_CURRENCY<>'RMB' AND ADVANCE_RATE=1 THEN EXCHANGERATE ELSE ADVANCE_RATE END) as ADVANCE_RATE"//预付支取用资料_汇率
+ ",ACCOUNTRMB,ACCOUNTUSD"// +strISEXPLAN
+ " From VW_ch_fee_settlement_do WHERE 1=1 "
+ " and GID in (SELECT GID=(SELECT top 1 GID from VW_ch_fee_settlement_do where BILLNO=c.BILLNO ORDER BY CURRENCY desc) from VW_ch_fee_settlement_do as c WHERE gid_s in (" + sGids.Trim() + "))"
+ " and gid_s in (" + sGids.Trim() + ") " + strVESSEL
+ " GROUP BY billno,CUSTOMERNAME,EXCHANGERATE,CURRENCY,SETTLETYPE,ACCOUNTRMB,ACCOUNTUSD,ACCOUNTS_CURRENCY,PREPAY_CURRENCY,AHSR_CURRENCY,FINANCIAL_CURRENCY,ADVANCE_CURRENCY,ACCOUNTS_RATE,PREPAY_RATE,AHSR_RATE,FINANCIAL_RATE,ADVANCE_RATE,ACCOUNTS_MONEY,PREPAY_MONEY,AHSR_MONEY,FINANCIAL_MONEY,ADVANCE_MONEY,Billtype"// + strISEXPLAN//,FEETYPE
+ " ORDER BY FEETYPE desc,CURRENCY,CUSTOMERNAME";// +strISEXPLAN;
#endregion
//对抵结算是否生成银行账款
if (isButtSettlement == true || ISADVANCE.Trim() == "False")
{
#region 现金、账户合计
sSQL_Z = "SELECT (CASE WHEN FEETYPE = 1 THEN '应收账款' WHEN FEETYPE=2 THEN '应付账款' ELSE '' END) as FEETYPE"
+ ",SETTLETYPE,CUSTOMERNAME,CURRENCY,EXCHANGERATE"
+ ",SUM(AMOUNT) AS je"
+ ",convert(decimal(18,2),round(SUM(AMOUNT*EXCHANGERATE),2)) AS hj"
+ ",(ACCOUNTS_MONEY) AS ACCOUNTS_MONEY_JE"//记账资料_金额
+ ",convert(decimal(18,2),round((ACCOUNTS_MONEY*(case when ACCOUNTS_CURRENCY<>'RMB' AND ACCOUNTS_RATE=1 THEN EXCHANGERATE ELSE ACCOUNTS_RATE END)),2)) AS ACCOUNTS_MONEY_HJ"//记账资料_金额
+ ",(PREPAY_MONEY) AS PREPAY_MONEY_JE"//预付支资料_金额
+ ",convert(decimal(18,2),round((PREPAY_MONEY*(case when PREPAY_CURRENCY<>'RMB' AND PREPAY_RATE=1 THEN EXCHANGERATE ELSE PREPAY_RATE END)),2)) AS PREPAY_MONEY_HJ"//预付支资料_金额
//+ ",SUM(AMOUNT) AS AHSR_MONEY_JE"//实付支资料_金额
//+ ",convert(decimal(18,2),round(SUM(AMOUNT*(case when AHSR_CURRENCY<>'RMB' AND AHSR_RATE=1 THEN EXCHANGERATE ELSE AHSR_RATE END)),2)) AS AHSR_MONEY_HJ"//实付支资料_金额
+ ",(AHSR_MONEY) AS AHSR_MONEY_JE"//实付支资料_金额
+ ",convert(decimal(18,2),round((AHSR_MONEY*(case when AHSR_CURRENCY<>'RMB' AND AHSR_RATE=1 THEN EXCHANGERATE ELSE AHSR_RATE END)),2)) AS AHSR_MONEY_HJ"//实付支资料_金额
+ ",(FINANCIAL_MONEY) AS FINANCIAL_MONEY_JE"//财务费用_金额
+ ",convert(decimal(18,2),round((FINANCIAL_MONEY*(case when FINANCIAL_CURRENCY<>'RMB' AND FINANCIAL_RATE=1 THEN EXCHANGERATE ELSE FINANCIAL_RATE END)),2)) AS FINANCIAL_MONEY_HJ"//财务费用_金额
+ ",(ADVANCE_MONEY) AS ADVANCE_MONEY_JE"//预付支取用资料_金额
+ ",convert(decimal(18,2),round((ADVANCE_MONEY*(case when ADVANCE_CURRENCY<>'RMB' AND ADVANCE_RATE=1 THEN EXCHANGERATE ELSE ADVANCE_RATE END)),2)) AS ADVANCE_MONEY_HJ"//预付支取用资料_金额
+ ",ACCOUNTS_CURRENCY"//记账资料_币别
+ ",PREPAY_CURRENCY"//预付支资料_币别
//+ ",CURRENCY as AHSR_CURRENCY"//实付支资料_币别
+ ",AHSR_CURRENCY"//实付支资料_币别
+ ",FINANCIAL_CURRENCY"//财务费用_币别
+ ",ADVANCE_CURRENCY"//预付支取用资料_币别
+ ",(case when ACCOUNTS_CURRENCY<>'RMB' AND ACCOUNTS_RATE=1 THEN EXCHANGERATE ELSE ACCOUNTS_RATE END) as ACCOUNTS_RATE"//记账资料_汇率
+ ",(case when PREPAY_CURRENCY<>'RMB' AND PREPAY_RATE=1 THEN EXCHANGERATE ELSE PREPAY_RATE END) as PREPAY_RATE"//预付支资料_汇率
+ ",(case when AHSR_CURRENCY<>'RMB' AND AHSR_RATE=1 THEN EXCHANGERATE ELSE AHSR_RATE END) as AHSR_RATE"//实付支资料_汇率
+ ",(case when FINANCIAL_CURRENCY<>'RMB' AND FINANCIAL_RATE=1 THEN EXCHANGERATE ELSE FINANCIAL_RATE END) as FINANCIAL_RATE"//财务费用_汇率
+ ",(case when ADVANCE_CURRENCY<>'RMB' AND ADVANCE_RATE=1 THEN EXCHANGERATE ELSE ADVANCE_RATE END) as ADVANCE_RATE"//预付支取用资料_汇率
+ ",ACCOUNTRMB,ACCOUNTUSD" //+ strISEXPLAN
+ " From VW_ch_fee_settlement_do WHERE 1=1 "
+ " and gid_s in (" + sGids.Trim() + ") " + strVESSEL
+ " GROUP BY BILLNO,CUSTOMERNAME,EXCHANGERATE,CURRENCY,SETTLETYPE,ACCOUNTRMB,ACCOUNTUSD,ACCOUNTS_CURRENCY,PREPAY_CURRENCY,AHSR_CURRENCY,FINANCIAL_CURRENCY,ADVANCE_CURRENCY,ACCOUNTS_RATE,PREPAY_RATE,AHSR_RATE,FINANCIAL_RATE,ADVANCE_RATE,ACCOUNTS_MONEY,PREPAY_MONEY,AHSR_MONEY,FINANCIAL_MONEY,ADVANCE_MONEY,FEETYPE,Billtype" //+ strISEXPLAN
+ " ORDER BY CURRENCY,CUSTOMERNAME,FEETYPE"; //+ strISEXPLAN
#endregion
}
else
{
#region 现金、账户合计
sSQL_Z = "select FEETYPE,SETTLETYPE,CURRENCY,ACCOUNTRMB,ACCOUNTUSD,AHSR_CURRENCY,AHSR_RATE"//,EXCHANGERATE
+ ",sum(AHSR_MONEY_JE) as AHSR_MONEY_JE"
+ ",sum(AHSR_MONEY_HJ) as AHSR_MONEY_HJ"
+ " from ("
+ "SELECT "
////+ "(CASE WHEN FEETYPE = 1 THEN '应收账款' WHEN FEETYPE=2 THEN '应付账款' ELSE '' END) as FEETYPE"
//+ "(CASE WHEN SUBSTRING(RIGHT(billno,12),0,3)='DR' THEN '应收账款' WHEN SUBSTRING(RIGHT(billno,12),0,3)='CR' THEN '应付账款' ELSE '' END) as FEETYPE"
+ "(CASE WHEN Billtype=1 THEN '应收账款' WHEN Billtype=2 THEN '应付账款' ELSE '' END) as FEETYPE"
+ ",FARCODE=(select top 1 FARCODE from info_client where SHORTNAME=b.CUSTOMERNAME)"
+ ",FAPCODE=(select top 1 FAPCODE from info_client where SHORTNAME=b.CUSTOMERNAME)"
+ ",SETTLETYPE,CUSTOMERNAME"
+ ",(select top 1 CURRENCY from VW_ch_fee_settlement_do where billno=b.billno ORDER BY CURRENCY DESC) as CURRENCY"//,EXCHANGERATE
+ ",(AHSR_MONEY) AS AHSR_MONEY_JE" //实付支资料_金额
+ ",convert(decimal(18,2),round((AHSR_MONEY*(case when AHSR_CURRENCY<>'RMB' AND AHSR_RATE=1 THEN (select top 1 EXCHANGERATE from VW_ch_fee_settlement_do where billno=b.billno ORDER BY CURRENCY DESC) ELSE AHSR_RATE END)),2)) AS AHSR_MONEY_HJ" //实付支资料_金额
+ ",AHSR_CURRENCY" //实付支资料_币别
+ ",(case when AHSR_CURRENCY<>'RMB' AND AHSR_RATE=1 THEN (select top 1 EXCHANGERATE from VW_ch_fee_settlement_do where billno=b.billno ORDER BY CURRENCY DESC) ELSE AHSR_RATE END) as AHSR_RATE" //实付支资料_汇率
+ ",ACCOUNTRMB,ACCOUNTUSD"
+ " from VW_ch_fee_settlement_do as b WHERE 1=1 "
+ " and gid_s in (" + sGids.Trim() + ") " + strVESSEL
+ " GROUP BY billno,CUSTOMERNAME,SETTLETYPE,ACCOUNTRMB,ACCOUNTUSD,AHSR_CURRENCY,AHSR_RATE,AHSR_MONEY,Billtype"//,FEETYPE,CURRENCY,EXCHANGERATE
+ " ) as a "
+ " GROUP BY FEETYPE,SETTLETYPE,CURRENCY,AHSR_CURRENCY,AHSR_RATE,ACCOUNTRMB,ACCOUNTUSD"//,EXCHANGERATE
+ " ORDER BY FEETYPE desc,CURRENCY";//
#endregion
}
}
else
{
#region 应收应付
sSQL = "SELECT (CASE WHEN FEETYPE = 1 THEN '应收账款' WHEN FEETYPE=2 THEN '应付账款' ELSE '' END) as FEETYPE"
+ ",FAPCODE=(select top 1 FAPCODE from info_client where SHORTNAME=VW_ch_fee_settlement_do.CUSTOMERNAME)"
+ ",FARCODE=(select top 1 FARCODE from info_client where SHORTNAME=VW_ch_fee_settlement_do.CUSTOMERNAME)"
+ ",SETTLETYPE,CUSTOMERNAME,ORIGCURRENCY as CURRENCY"//CURRENCY
+ ",(CASE WHEN ORIGCURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END) as EXCHANGERATE"//CURRENCY
+ ",SUM(ORIGAMOUNT) AS je"//AMOUNT
+ ",(case when (ORIGCURRENCY<>CURRENCY and CURRENCY='RMB') then sum(AMOUNT) else convert(decimal(18,2),round(SUM(ORIGAMOUNT*(CASE WHEN CURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END)),2)) end) AS hj"
+ ",(ACCOUNTS_MONEY) AS ACCOUNTS_MONEY_JE" //记账资料_金额
+ ",convert(decimal(18,2),round((ACCOUNTS_MONEY*(CASE WHEN ACCOUNTS_CURRENCY='USD' THEN " + dlRATE + " ELSE ACCOUNTS_RATE END)),2)) AS ACCOUNTS_MONEY_HJ" //记账资料_金额
+ ",(PREPAY_MONEY) AS PREPAY_MONEY_JE" //预付支资料_金额
+ ",convert(decimal(18,2),round((PREPAY_MONEY*(CASE WHEN PREPAY_CURRENCY='USD' THEN " + dlRATE + " ELSE PREPAY_RATE END)),2)) AS PREPAY_MONEY_HJ" //预付支资料_金额
+ ",(AHSR_MONEY) AS AHSR_MONEY_JE" //实付支资料_金额
+ ",convert(decimal(18,2),round((AHSR_MONEY*(CASE WHEN AHSR_CURRENCY='USD' THEN " + dlRATE + " ELSE AHSR_RATE END)),2)) AS AHSR_MONEY_HJ" //实付支资料_金额
+ ",(FINANCIAL_MONEY) AS FINANCIAL_MONEY_JE" //财务费用_金额
+ ",convert(decimal(18,2),round((FINANCIAL_MONEY*(CASE WHEN FINANCIAL_CURRENCY='USD' THEN " + dlRATE + " ELSE FINANCIAL_RATE END)),2)) AS FINANCIAL_MONEY_HJ" //财务费用_金额
+ ",(ADVANCE_MONEY) AS ADVANCE_MONEY_JE" //预付支取用资料_金额
+ ",convert(decimal(18,2),round((ADVANCE_MONEY*(CASE WHEN ADVANCE_CURRENCY='USD' THEN " + dlRATE + " ELSE ADVANCE_RATE END)),2)) AS ADVANCE_MONEY_HJ" //预付支取用资料_金额
+ ",ACCOUNTS_CURRENCY" //记账资料_币别
+ ",PREPAY_CURRENCY" //预付支资料_币别
+ ",AHSR_CURRENCY" //实付支资料_币别
+ ",FINANCIAL_CURRENCY" //财务费用_币别
+ ",ADVANCE_CURRENCY" //预付支取用资料_币别
+ ",(CASE WHEN ACCOUNTS_CURRENCY='USD' THEN " + dlRATE + " ELSE ACCOUNTS_RATE END) as ACCOUNTS_RATE" //记账资料_汇率
+ ",(CASE WHEN PREPAY_CURRENCY='USD' THEN " + dlRATE + " ELSE PREPAY_RATE END) as PREPAY_RATE" //预付支资料_汇率
+ ",(CASE WHEN AHSR_CURRENCY='USD' THEN " + dlRATE + " ELSE AHSR_RATE END) as AHSR_RATE" //实付支资料_汇率
+ ",(CASE WHEN FINANCIAL_CURRENCY='USD' THEN " + dlRATE + " ELSE FINANCIAL_RATE END) as FINANCIAL_RATE" //财务费用_汇率
+ ",(CASE WHEN ADVANCE_CURRENCY='USD' THEN " + dlRATE + " ELSE ADVANCE_RATE END) as ADVANCE_RATE" //预付支取用资料_汇率
+ ",ACCOUNTRMB,ACCOUNTUSD" + strISEXPLAN
+ " From VW_ch_fee_settlement_do WHERE 1=1 "
+ " and gid_s in (" + sGids.Trim() + ") " + strVESSEL
+ " GROUP BY FEETYPE,CUSTOMERNAME,EXCHANGERATE,CURRENCY,ORIGCURRENCY,SETTLETYPE,ACCOUNTRMB,ACCOUNTUSD,ACCOUNTS_CURRENCY,PREPAY_CURRENCY,AHSR_CURRENCY,FINANCIAL_CURRENCY,ADVANCE_CURRENCY,ACCOUNTS_RATE,PREPAY_RATE,AHSR_RATE,FINANCIAL_RATE,ADVANCE_RATE,ACCOUNTS_MONEY,PREPAY_MONEY,AHSR_MONEY,FINANCIAL_MONEY,ADVANCE_MONEY" + strISEXPLAN
+ " ORDER BY FEETYPE desc,ORIGCURRENCY,CUSTOMERNAME" + strISEXPLAN;//,CURRENCY
#endregion
#region 预收预付
sSQL_Y = "SELECT "
////+ "(CASE WHEN FEETYPE = 1 THEN '应收账款' WHEN FEETYPE=2 THEN '应付账款' ELSE '' END) as FEETYPE"
//+ "(CASE WHEN SUBSTRING(RIGHT(billno,12),0,3)='DR' THEN '应收账款' WHEN SUBSTRING(RIGHT(billno,12),0,3)='CR' THEN '应付账款' ELSE '' END) as FEETYPE"
+ "(CASE WHEN Billtype=1 THEN '应收账款' WHEN Billtype=2 THEN '应付账款' ELSE '' END) as FEETYPE"
+ ",FAPCODE=(select top 1 FAPCODE from info_client where SHORTNAME=VW_ch_fee_settlement_do.CUSTOMERNAME)"
+ ",FARCODE=(select top 1 FARCODE from info_client where SHORTNAME=VW_ch_fee_settlement_do.CUSTOMERNAME)"
+ ",SETTLETYPE,CUSTOMERNAME,CURRENCY"
+ ",(CASE WHEN CURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END) as EXCHANGERATE"
+ ",(ACCOUNTS_MONEY) AS ACCOUNTS_MONEY_JE" //记账资料_金额
+ ",convert(decimal(18,2),round((ACCOUNTS_MONEY*(CASE WHEN ACCOUNTS_CURRENCY='USD' THEN " + dlRATE + " ELSE ACCOUNTS_RATE END)),2)) AS ACCOUNTS_MONEY_HJ" //记账资料_金额
+ ",(PREPAY_MONEY) AS PREPAY_MONEY_JE" //预付支资料_金额
+ ",convert(decimal(18,2),round((PREPAY_MONEY*(CASE WHEN PREPAY_CURRENCY='USD' THEN " + dlRATE + " ELSE PREPAY_RATE END)),2)) AS PREPAY_MONEY_HJ" //预付支资料_金额
+ ",(AHSR_MONEY) AS AHSR_MONEY_JE" //实付支资料_金额
+ ",convert(decimal(18,2),round((AHSR_MONEY*(CASE WHEN AHSR_CURRENCY='USD' THEN " + dlRATE + " ELSE AHSR_RATE END)),2)) AS AHSR_MONEY_HJ" //实付支资料_金额
+ ",(FINANCIAL_MONEY) AS FINANCIAL_MONEY_JE" //财务费用_金额
+ ",convert(decimal(18,2),round((FINANCIAL_MONEY*(CASE WHEN FINANCIAL_CURRENCY='USD' THEN " + dlRATE + " ELSE (case when FINANCIAL_CURRENCY<>'RMB' AND FINANCIAL_RATE=1 THEN " + dlRATE + " ELSE FINANCIAL_RATE END) END)),2)) AS FINANCIAL_MONEY_HJ" //财务费用_金额
+ ",(ADVANCE_MONEY) AS ADVANCE_MONEY_JE" //预付支取用资料_金额
+ ",convert(decimal(18,2),round((ADVANCE_MONEY*(CASE WHEN ADVANCE_CURRENCY='USD' THEN " + dlRATE + " ELSE ADVANCE_RATE END)),2)) AS ADVANCE_MONEY_HJ" //预付支取用资料_金额
+ ",ACCOUNTS_CURRENCY" //记账资料_币别
+ ",PREPAY_CURRENCY" //预付支资料_币别
+ ",AHSR_CURRENCY" //实付支资料_币别
+ ",FINANCIAL_CURRENCY" //财务费用_币别
+ ",ADVANCE_CURRENCY" //预付支取用资料_币别
+ ",(CASE WHEN ACCOUNTS_CURRENCY='USD' THEN " + dlRATE + " ELSE ACCOUNTS_RATE END) as ACCOUNTS_RATE" //记账资料_汇率
+ ",(CASE WHEN PREPAY_CURRENCY='USD' THEN " + dlRATE + " ELSE PREPAY_RATE END) as PREPAY_RATE" //预付支资料_汇率
+ ",(CASE WHEN AHSR_CURRENCY='USD' THEN " + dlRATE + " ELSE AHSR_RATE END) as AHSR_RATE" //实付支资料_汇率
+ ",(CASE WHEN FINANCIAL_CURRENCY='USD' THEN " + dlRATE + " ELSE (case when FINANCIAL_CURRENCY<>'RMB' AND FINANCIAL_RATE=1 THEN " + dlRATE + " ELSE FINANCIAL_RATE END) END) as FINANCIAL_RATE" //财务费用_汇率
+ ",(CASE WHEN ADVANCE_CURRENCY='USD' THEN " + dlRATE + " ELSE ADVANCE_RATE END) as ADVANCE_RATE" //预付支取用资料_汇率
+ ",ACCOUNTRMB,ACCOUNTUSD"// + strISEXPLAN
+ " From VW_ch_fee_settlement_do WHERE 1=1 "
+ " and GID in (SELECT GID=(SELECT top 1 GID from VW_ch_fee_settlement_do where BILLNO=c.BILLNO ORDER BY CURRENCY desc) from VW_ch_fee_settlement_do as c WHERE gid_s in (" + sGids.Trim() + "))"
+ " and gid_s in (" + sGids.Trim() + ") " + strVESSEL
+ " GROUP BY billno,CUSTOMERNAME,EXCHANGERATE,CURRENCY,SETTLETYPE,ACCOUNTRMB,ACCOUNTUSD,ACCOUNTS_CURRENCY,PREPAY_CURRENCY,AHSR_CURRENCY,FINANCIAL_CURRENCY,ADVANCE_CURRENCY,ACCOUNTS_RATE,PREPAY_RATE,AHSR_RATE,FINANCIAL_RATE,ADVANCE_RATE,ACCOUNTS_MONEY,PREPAY_MONEY,AHSR_MONEY,FINANCIAL_MONEY,ADVANCE_MONEY,Billtype"// +strISEXPLAN//,FEETYPE
+ " ORDER BY FEETYPE desc,CURRENCY,CUSTOMERNAME";// +strISEXPLAN;
#endregion
//对抵结算是否生成银行账款
if (isButtSettlement == true || ISADVANCE.Trim() == "False")
{
#region 现金、账户合计
sSQL_Z = "SELECT (CASE WHEN FEETYPE = 1 THEN '应收账款' WHEN FEETYPE=2 THEN '应付账款' ELSE '' END) as FEETYPE"
+ ",SETTLETYPE,CUSTOMERNAME,CURRENCY"
+ ",(CASE WHEN CURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END) as EXCHANGERATE"
+ ",SUM(AMOUNT) AS je"
+ ",convert(decimal(18,2),round(SUM(AMOUNT*(CASE WHEN CURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END)),2)) AS hj"
+ ",(ACCOUNTS_MONEY) AS ACCOUNTS_MONEY_JE" //记账资料_金额
+ ",convert(decimal(18,2),round((ACCOUNTS_MONEY*(CASE WHEN ACCOUNTS_CURRENCY='USD' THEN " + dlRATE + " ELSE ACCOUNTS_RATE END)),2)) AS ACCOUNTS_MONEY_HJ" //记账资料_金额
+ ",(PREPAY_MONEY) AS PREPAY_MONEY_JE" //预付支资料_金额
+ ",convert(decimal(18,2),round((PREPAY_MONEY*(CASE WHEN PREPAY_CURRENCY='USD' THEN " + dlRATE + " ELSE PREPAY_RATE END)),2)) AS PREPAY_MONEY_HJ" //预付支资料_金额
//+ ",SUM(AMOUNT) AS AHSR_MONEY_JE" //实付支资料_金额
//+ ",convert(decimal(18,2),round(SUM(AMOUNT*(CASE WHEN CURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END)),2)) AS AHSR_MONEY_HJ" //实付支资料_金额
+ ",(AHSR_MONEY) AS AHSR_MONEY_JE" //实付支资料_金额
+ ",convert(decimal(18,2),round((AHSR_MONEY*(CASE WHEN CURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END)),2)) AS AHSR_MONEY_HJ" //实付支资料_金额
+ ",(FINANCIAL_MONEY) AS FINANCIAL_MONEY_JE" //财务费用_金额
+ ",convert(decimal(18,2),round((FINANCIAL_MONEY*(CASE WHEN FINANCIAL_CURRENCY='USD' THEN " + dlRATE + " ELSE FINANCIAL_RATE END)),2)) AS FINANCIAL_MONEY_HJ" //财务费用_金额
+ ",(ADVANCE_MONEY) AS ADVANCE_MONEY_JE" //预付支取用资料_金额
+ ",convert(decimal(18,2),round((ADVANCE_MONEY*(CASE WHEN ADVANCE_CURRENCY='USD' THEN " + dlRATE + " ELSE ADVANCE_RATE END)),2)) AS ADVANCE_MONEY_HJ" //预付支取用资料_金额
+ ",ACCOUNTS_CURRENCY" //记账资料_币别
+ ",PREPAY_CURRENCY" //预付支资料_币别
//+ ",CURRENCY as AHSR_CURRENCY" //实付支资料_币别
+ ",AHSR_CURRENCY" //实付支资料_币别
+ ",FINANCIAL_CURRENCY" //财务费用_币别
+ ",ADVANCE_CURRENCY" //预付支取用资料_币别
+ ",(CASE WHEN ACCOUNTS_CURRENCY='USD' THEN " + dlRATE + " ELSE ACCOUNTS_RATE END) as ACCOUNTS_RATE" //记账资料_汇率
+ ",(CASE WHEN PREPAY_CURRENCY='USD' THEN " + dlRATE + " ELSE PREPAY_RATE END) as PREPAY_RATE" //预付支资料_汇率
+ ",(CASE WHEN CURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END) as AHSR_RATE" //实付支资料_汇率
+ ",(CASE WHEN FINANCIAL_CURRENCY='USD' THEN " + dlRATE + " ELSE FINANCIAL_RATE END) as FINANCIAL_RATE" //财务费用_汇率
+ ",(CASE WHEN ADVANCE_CURRENCY='USD' THEN " + dlRATE + " ELSE ADVANCE_RATE END) as ADVANCE_RATE" //预付支取用资料_汇率
+ ",ACCOUNTRMB,ACCOUNTUSD" //+ strISEXPLAN
+ " From VW_ch_fee_settlement_do WHERE 1=1 "
+ " and gid_s in (" + sGids.Trim() + ") " + strVESSEL
+ " GROUP BY BILLNO,CUSTOMERNAME,EXCHANGERATE,CURRENCY,SETTLETYPE,ACCOUNTRMB,ACCOUNTUSD,ACCOUNTS_CURRENCY,PREPAY_CURRENCY,AHSR_CURRENCY,FINANCIAL_CURRENCY,ADVANCE_CURRENCY,ACCOUNTS_RATE,PREPAY_RATE,AHSR_RATE,FINANCIAL_RATE,ADVANCE_RATE,ACCOUNTS_MONEY,PREPAY_MONEY,AHSR_MONEY,FINANCIAL_MONEY,ADVANCE_MONEY,FEETYPE,Billtype" //+ strISEXPLAN
+ " ORDER BY CURRENCY,CUSTOMERNAME,FEETYPE"; //+ strISEXPLAN
#endregion
}
else
{
#region 现金、账户合计
sSQL_Z = "select FEETYPE,SETTLETYPE,CURRENCY,ACCOUNTRMB,ACCOUNTUSD,AHSR_CURRENCY,AHSR_RATE"//,EXCHANGERATE
+ ",sum(AHSR_MONEY_JE) as AHSR_MONEY_JE"
+ ",sum(AHSR_MONEY_HJ) as AHSR_MONEY_HJ"
+ " from ("
+ "SELECT "
////+ "(CASE WHEN FEETYPE = 1 THEN '应收账款' WHEN FEETYPE=2 THEN '应付账款' ELSE '' END) as FEETYPE"
//+ "(CASE WHEN SUBSTRING(RIGHT(billno,12),0,3)='DR' THEN '应收账款' WHEN SUBSTRING(RIGHT(billno,12),0,3)='CR' THEN '应付账款' ELSE '' END) as FEETYPE"
+ "(CASE WHEN Billtype=1 THEN '应收账款' WHEN Billtype=2 THEN '应付账款' ELSE '' END) as FEETYPE"
+ ",FAPCODE=(select top 1 FAPCODE from info_client where SHORTNAME=b.CUSTOMERNAME)"
+ ",FARCODE=(select top 1 FARCODE from info_client where SHORTNAME=b.CUSTOMERNAME)"
+ ",SETTLETYPE,CUSTOMERNAME"
+ ",(select top 1 CURRENCY from VW_ch_fee_settlement_do where billno=b.billno ORDER BY CURRENCY DESC) as CURRENCY"//,EXCHANGERATE
//+ ",(CASE WHEN CURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END) as EXCHANGERATE"
+ ",(AHSR_MONEY) AS AHSR_MONEY_JE"//实付支资料_金额
+ ",convert(decimal(18,2),round((AHSR_MONEY*(CASE WHEN AHSR_CURRENCY='USD' THEN " + dlRATE + " ELSE AHSR_RATE END)),2)) AS AHSR_MONEY_HJ"//实付支资料_金额
+ ",AHSR_CURRENCY"//实付支资料_币别
+ ",(CASE WHEN AHSR_CURRENCY='USD' THEN " + dlRATE + " ELSE AHSR_RATE END) as AHSR_RATE"//实付支资料_汇率
+ ",ACCOUNTRMB,ACCOUNTUSD"
+ " From VW_ch_fee_settlement_do as b WHERE 1=1 "
+ " and gid_s in (" + sGids.Trim() + ") " + strVESSEL
+ " GROUP BY billno,CUSTOMERNAME,SETTLETYPE,ACCOUNTRMB,ACCOUNTUSD,AHSR_CURRENCY,AHSR_RATE,AHSR_MONEY,Billtype"//,CURRENCY,FEETYPE,EXCHANGERATE
+ " ) as a "
+ " GROUP BY FEETYPE,SETTLETYPE,CURRENCY,AHSR_CURRENCY,AHSR_RATE,ACCOUNTRMB,ACCOUNTUSD"//,EXCHANGERATE
+ " ORDER BY FEETYPE desc,CURRENCY";
#endregion
}
}
DataSet dsVWChFeeSettlementDo = T_ALL_DA.GetAllSQL(sSQL);
DataSet dsVWChFeeSettlementDo_Y = T_ALL_DA.GetAllSQL(sSQL_Y);
DataSet dsVWChFeeSettlementDo_Z = T_ALL_DA.GetAllSQL(sSQL_Z);
#endregion
if (dsVWChFeeSettlementDo != null)
{
//暂时停用
#region 插入明细表 应收账款、应付账款、银行账户(原结算信息)
/*
#region 插入明细表 应收账款、应付账款
for (int i = 0; i < dsVWChFeeSettlementDo.Tables[0].Rows.Count; i++)
{
n = i;// +1;
CwVouitemsEntity CwVouitemsEntity = new CwVouitemsEntity();
//CwVouitemsEntity.GID 唯一编码 newid()
CwVouitemsEntity.ORDNO = strORDNO.Trim();
CwVouitemsEntity.ITEMNO = n;// 行号
CwVouitemsEntity.PACCID = "";//父级科目贷码
CwVouitemsEntity.PROPERTY = 0;//科目属性
CwVouitemsEntity.GRADE = 0;//科目级别
if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应收账款")
{
#region 应收账款
iAMTDR = iAMTDR + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
//
if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim() == "RMB")
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["AR"].ToString().Trim();//应收账款科目贷码
CwVouitemsEntity.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.ISFCY = false;//是否外币
CwVouitemsEntity.FCYNO = "RMB";//外币编号usd
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
dRMBS += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币借方金额(互斥)
if (dsAR == null)
{
CwVouitemsEntity.ACCNAME = "";//科目名称
CwVouitemsEntity.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity.DC = "D";//贷方向
}
else
{
CwVouitemsEntity.ACCNAME = dsAR.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsAR.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsAR.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsAR.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsAR.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
if (dsAR.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity.DC = "D";//借方向
}
else
{
CwVouitemsEntity.DC = "C";//贷方向
}
}
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim() == "USD")
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["ARFC"].ToString().Trim();//应收账款外币科目贷码
CwVouitemsEntity.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.ISFCY = true;//是否外币
CwVouitemsEntity.FCYNO = "USD";//外币编号usd
CwVouitemsEntity.FCYDR = 0;//外币贷方金额
CwVouitemsEntity.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//外币借方金额
dUSDS += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币借方金额(互斥)
if (dsARFC == null)
{
CwVouitemsEntity.ACCNAME = "";//科目名称
CwVouitemsEntity.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity.DC = "C";//贷方向
}
else
{
CwVouitemsEntity.ACCNAME = dsARFC.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsARFC.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsARFC.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsARFC.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsARFC.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
if (dsARFC.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity.DC = "D";//借方向
}
else
{
CwVouitemsEntity.DC = "C";//贷方向
}
}
}
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo.Tables[0].Rows[i]["FAPCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
#endregion
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应付账款")
{
#region 应付账款
iAMTCR = iAMTCR + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
//
if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim() == "RMB")
{
if (dsCwDesign.Tables[0].Rows[0]["ISAPMBSPENDING"].ToString().Trim() == "True")
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["APMBSPENDING"].ToString().Trim();//应付账款科目贷码
}
else
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["AP"].ToString().Trim();//应付账款科目贷码
}
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.ISFCY = false;//是否外币
CwVouitemsEntity.FCYNO = "RMB";//外币编号usd
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
dRMBF += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币贷方金额(互斥)
if (dsAP == null)
{
CwVouitemsEntity.ACCNAME = "";//科目名称
CwVouitemsEntity.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity.DC = "C";//贷方向
CwVouitemsEntity.CORPID = "";//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = "";//客户(系统)
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISAPMBSPENDING"].ToString().Trim() == "True")
{
if (dsAPMBSPENDING == null)
{
CwVouitemsEntity.ACCNAME = "";//科目名称
}
else
{
CwVouitemsEntity.ACCNAME = dsAPMBSPENDING.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
}
CwVouitemsEntity.CORPID = "";//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = "";//客户(系统)
CwVouitemsEntity.ISCORPACC = false;//核算客户,按规则设置生成
}
else
{
CwVouitemsEntity.ACCNAME = dsAP.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsAP.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
}
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsAP.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsAP.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsAP.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
if (dsAP.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity.DC = "D";//借方向
}
else
{
CwVouitemsEntity.DC = "C";//贷方向
}
}
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim() == "USD")
{
if (dsCwDesign.Tables[0].Rows[0]["ISAPTMSFC"].ToString().Trim() == "True")
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["APTMSFC"].ToString().Trim();//应付账款科目贷码
}
else
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["APFC"].ToString().Trim();//应付账款外币科目贷码
}
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.ISFCY = true;//是否外币
CwVouitemsEntity.FCYNO = "USD";//外币编号usd
CwVouitemsEntity.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//外币贷方金额
CwVouitemsEntity.FCYCR = 0;//外币借方金额
dUSDF += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币贷方金额(互斥)
if (dsAPFC == null)
{
CwVouitemsEntity.ACCNAME = "";//科目名称
CwVouitemsEntity.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity.DC = "C";//贷方向
CwVouitemsEntity.CORPID = "";//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = "";//客户(系统)
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISAPTMSFC"].ToString().Trim() == "True")
{
if (dsAPTMSFC == null)
{
CwVouitemsEntity.ACCNAME = "";//科目名称
}
else
{
CwVouitemsEntity.ACCNAME = dsAPTMSFC.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
}
CwVouitemsEntity.CORPID = "";//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = "";//客户(系统)
CwVouitemsEntity.ISCORPACC = false;//核算客户,按规则设置生成
}
else
{
CwVouitemsEntity.ACCNAME = dsAPFC.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsAPFC.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
}
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsAPFC.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsAPFC.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsAPFC.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
if (dsAPFC.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity.DC = "D";//借方向
}
else
{
CwVouitemsEntity.DC = "C";//贷方向
}
}
}
//CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
//CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
#endregion
}
CwVouitemsEntity.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["EXCHANGERATE"].ToString().Trim());//汇率
dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["EXCHANGERATE"].ToString().Trim());//汇率
CwVouitemsEntity.QTYUNIT = "";//数量包装单位
CwVouitemsEntity.QTYDR = 0;//借方数量
CwVouitemsEntity.QTYCR = 0;//贷方数量
//
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strSelEXPLAN = "";
//if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
//{
// strISEXPLAN += " " + dsCwDesign.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
//}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
//
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'" + strSelEXPLAN;//BILLNO
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
}
//
CwVouitemsEntity.EXPLAN = strEXPLAN;//摘要,规则生成
//strEXPLANALL = strEXPLAN;
CwVouitemsEntity.DEPTID = "";//strDEPTID;//部门(系统)
CwVouitemsEntity.EMPLID = "";//strEMPLID;//人员(系统)
CwVouitemsEntity.SALE = "";//strSALE;//人员名称
CwVouitemsEntity.PITEMID = 0;//父级项目编号
CwVouitemsEntity.ITEMID = "0";//项目编号
CwVouitemsEntity.FIELD1 = "";//预留字段1
CwVouitemsEntity.FIELD2 = "";//预留字段2
CwVouitemsEntity.FIELD3 = "";//预留字段3
CwVouitemsEntity.FIELD4 = "";//预留字段4
CwVouitemsEntity.FIELD5 = "";//预留字段5
CwVouitemsEntity.FIELD6 = "";//预留字段6
CwVouitemsEntity.FIELD7 = "";//预留字段7
CwVouitemsEntity.FIELD8 = "";//预留字段8
CwVouitemsEntity.FIELD9 = "";//预留字段9
CwVouitemsEntity.FIELD10 = "";//预留字段10
if (dsCwDesign.Tables[0].Rows[0]["ISVBM"].ToString().Trim() == "True")
{
CwVouitemsEntity.ISSYS = false;//是否手动录入
}
else
{
CwVouitemsEntity.ISSYS = true;//是否手动录入
}
CwVouitemsEntity.FSETTLCODE = dsVWChFeeSettlementDo.Tables[0].Rows[i]["SETTLETYPE"].ToString().Trim();//结算方式
CwVouitemsEntity.FSETTLENO = "";//财务辅助编号
CwVouitemsEntity.MODIFIEDUSER = strUserID;//最后一次更新操作人
CwVouitemsEntity.BLNO = "";//BILLNO
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
CwVouitemsEntity.BLNO = dsVWChFeeSettlementDo.Tables[0].Rows[i]["mblno"].ToString().Trim();//
}
//strBILLNOALL = CwVouitemsEntity.BLNO.ToString().Trim();//
CwVouitemsEntities.Add(CwVouitemsEntity);
}
#endregion
#region 插入明细表 现金、账户,收入\成本 生成 全额\差额
//现金、账户
Decimal dRMB = dRMBS - dRMBF;
Decimal dUSD = dUSDS - dUSDF;
//收入\成本 生成 全额\差额
strJie = strJie + dRMBS + dUSDS * dEXCHANGERATE;
strDai = strDai + dRMBF + dUSDF * dEXCHANGERATE;
//
string ls = "";
string strBPVW = "";
//
////(CASE WHEN FEETYPE = 1 THEN '应收账款' ELSE '应付账款' END) as 类型
////,CUSTOMERNAME 客户名称
////,EXCHANGERATE 汇率
////,CURRENCY 币别`
////,ISADVANCEDPAY 是否垫付
////,SUM(AMOUNT) AS 金额
////,SUM(AMOUNT*EXCHANGERATE) AS 合计金额
//if (ISRATE == true)
//{
// sSQL = "SELECT BILLNO,(CASE WHEN FEETYPE = 1 THEN '应收账款' WHEN FEETYPE=2 THEN '应付账款' ELSE '' END) as FEETYPE";
// sSQL += ",SETTLETYPE,EXCHANGERATE";
// sSQL += ",CURRENCY,SUM(AMOUNT) AS je,SUM(AMOUNT*EXCHANGERATE) AS hj";
// sSQL += ",ACCOUNTRMB,ACCOUNTUSD";
// sSQL += " From VW_ch_fee_settlement_do WHERE 1=1 ";
// sSQL += " and gid_s in (" + sGids.Trim() + ") ";
// sSQL += " GROUP BY BILLNO,FEETYPE,EXCHANGERATE,CURRENCY,SETTLETYPE,ACCOUNTRMB,ACCOUNTUSD";
// sSQL += " ORDER BY BILLNO,FEETYPE desc,CURRENCY";
//}
//else
//{
// sSQL = "SELECT BILLNO,(CASE WHEN FEETYPE = 1 THEN '应收账款' WHEN FEETYPE=2 THEN '应付账款' ELSE '' END) as FEETYPE";
// sSQL += ",SETTLETYPE";
// sSQL += ",(CASE WHEN CURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END) as EXCHANGERATE";
// sSQL += ",CURRENCY,SUM(AMOUNT) AS je";
// sSQL += ",SUM(AMOUNT*(CASE WHEN CURRENCY='USD' THEN " + dlRATE + " ELSE EXCHANGERATE END)) AS hj";
// sSQL += ",ACCOUNTRMB,ACCOUNTUSD";
// sSQL += " From VW_ch_fee_settlement_do WHERE 1=1 ";
// sSQL += " and gid_s in (" + sGids.Trim() + ") ";
// sSQL += " GROUP BY BILLNO,FEETYPE,EXCHANGERATE,CURRENCY,SETTLETYPE,ACCOUNTRMB,ACCOUNTUSD";
// sSQL += " ORDER BY BILLNO,FEETYPE desc,CURRENCY";
//}
//DataSet dsVWChFeeSettlementDo0 = T_ALL_DA.GetAllSQL(sSQL);
//if (dsVWChFeeSettlementDo0 != null)
//{
for (int j = 0; j < dsVWChFeeSettlementDo.Tables[0].Rows.Count; j++)
{
n = n + 1;
CwVouitemsEntity CwVouitemsEntity2 = new CwVouitemsEntity();
//CwVouitemsEntity2.GID 唯一编码 newid()
CwVouitemsEntity2.ORDNO = strORDNO.Trim();
CwVouitemsEntity2.ITEMNO = n;// 行号
CwVouitemsEntity2.PACCID = "";//父级科目贷码
CwVouitemsEntity2.PROPERTY = 0;//科目属性
CwVouitemsEntity2.GRADE = 0;//科目级别
if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["FEETYPE"].ToString().Trim() == "应收账款")
{
//iAMTDR = iAMTDR + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["hj"].ToString().Trim());
//
if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["CURRENCY"].ToString().Trim() == "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTRMB"].ToString().Trim() + "'";// in (select top 1 ACCOUNTRMB from ch_fee_settlement where BILLNO='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["BILLNO"].ToString().Trim() + "')";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTRMB"].ToString().Trim() + "'";// in (select top 1 ACCOUNTRMB from ch_fee_settlement where BILLNO='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["BILLNO"].ToString().Trim() + "')";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["je"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = 0;//本位币借方金额(互斥)
strDai = strDai + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["je"].ToString().Trim());
CwVouitemsEntity2.ISFCY = false;//是否外币
CwVouitemsEntity2.FCYNO = "RMB";//外币编号usd
CwVouitemsEntity2.FCYDR = 0;//外币借方金额
CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "D";//贷方向
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["CURRENCY"].ToString().Trim() == "USD")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTUSD"].ToString().Trim() + "'";// in (select top 1 ACCOUNTUSD from ch_fee_settlement where BILLNO='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["BILLNO"].ToString().Trim() + "')";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTUSD"].ToString().Trim() + "'";// in (select top 1 ACCOUNTUSD from ch_fee_settlement where BILLNO='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["BILLNO"].ToString().Trim() + "')";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["hj"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = 0;//本位币借方金额(互斥)
strDai = strDai + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["hj"].ToString().Trim());
CwVouitemsEntity2.ISFCY = true;//是否外币
CwVouitemsEntity2.FCYNO = "USD";//外币编号usd
CwVouitemsEntity2.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["je"].ToString().Trim());//外币借方金额
CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "D";//借方向
}
CwVouitemsEntity2.CORPID = "";// dsVWChFeeSettlementDo.Tables[0].Rows[j]["FAPCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity2.CUSTOMERNAME = "";//dsVWChFeeSettlementDo.Tables[0].Rows[j]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
strBPVW = dsCwDesign.Tables[0].Rows[0]["BRTW"].ToString().Trim();
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["FEETYPE"].ToString().Trim() == "应付账款")
{
//iAMTCR = iAMTCR + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["hj"].ToString().Trim());
//
if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["CURRENCY"].ToString().Trim() == "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTRMB"].ToString().Trim() + "'";// in (select top 1 ACCOUNTRMB from ch_fee_settlement where BILLNO='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["BILLNO"].ToString().Trim() + "')";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTRMB"].ToString().Trim() + "'";// in (select top 1 ACCOUNTRMB from ch_fee_settlement where BILLNO='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["BILLNO"].ToString().Trim() + "')";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["je"].ToString().Trim());//本位币借方金额(互斥)
strJie = strJie + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["je"].ToString().Trim());
CwVouitemsEntity2.ISFCY = false;//是否外币
CwVouitemsEntity2.FCYNO = "RMB";//外币编号usd
CwVouitemsEntity2.FCYDR = 0;//外币借方金额
CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "C";//贷方向
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["CURRENCY"].ToString().Trim() == "USD")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTUSD"].ToString().Trim() + "'";// in (select top 1 ACCOUNTUSD from ch_fee_settlement where BILLNO='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["BILLNO"].ToString().Trim() + "')";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTUSD"].ToString().Trim() + "'";// in (select top 1 ACCOUNTUSD from ch_fee_settlement where BILLNO='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["BILLNO"].ToString().Trim() + "')";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["hj"].ToString().Trim());//本位币借方金额(互斥)
strJie = strJie + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["hj"].ToString().Trim());
CwVouitemsEntity2.ISFCY = true;//是否外币
CwVouitemsEntity2.FCYNO = "USD";//外币编号usd
CwVouitemsEntity2.FCYDR = 0;//外币借方金额
CwVouitemsEntity2.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["je"].ToString().Trim());//外币贷方金额
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "C";//贷方向
}
CwVouitemsEntity2.CORPID = "";//dsVWChFeeSettlementDo.Tables[0].Rows[j]["FAPCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity2.CUSTOMERNAME = "";//dsVWChFeeSettlementDo.Tables[0].Rows[j]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
strBPVW = dsCwDesign.Tables[0].Rows[0]["BPVW"].ToString().Trim();
}
CwVouitemsEntity2.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["EXCHANGERATE"].ToString().Trim());//汇率
dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["EXCHANGERATE"].ToString().Trim());//汇率
CwVouitemsEntity2.QTYUNIT = "";//数量包装单位
CwVouitemsEntity2.QTYDR = 0;//借方数量
CwVouitemsEntity2.QTYCR = 0;//贷方数量
//
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strSelEXPLAN = "";
//if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
//{
// strISEXPLAN += " " + dsCwDesign.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
//}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["CUSTNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["MBLNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["VESSEL"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["VOYNO"].ToString().Trim() + "'";
}
//
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["CUSTOMERNAME"].ToString().Trim() + "'" + strSelEXPLAN;//BILLNO
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
}
//
CwVouitemsEntity2.EXPLAN = strEXPLAN;//摘要规则生成ALL
CwVouitemsEntity2.DEPTID = "";//strDEPTID;//部门(系统)
CwVouitemsEntity2.EMPLID = "";//strEMPLID;//人员(系统)
CwVouitemsEntity2.SALE = "";//strSALE;//人员名称
CwVouitemsEntity2.PITEMID = 0;//父级项目编号
CwVouitemsEntity2.ITEMID = "0";//项目编号
CwVouitemsEntity2.FIELD1 = "";//预留字段1
CwVouitemsEntity2.FIELD2 = "";//预留字段2
CwVouitemsEntity2.FIELD3 = "";//预留字段3
CwVouitemsEntity2.FIELD4 = "";//预留字段4
CwVouitemsEntity2.FIELD5 = "";//预留字段5
CwVouitemsEntity2.FIELD6 = "";//预留字段6
CwVouitemsEntity2.FIELD7 = "";//预留字段7
CwVouitemsEntity2.FIELD8 = "";//预留字段8
CwVouitemsEntity2.FIELD9 = "";//预留字段9
CwVouitemsEntity2.FIELD10 = "";//预留字段10
CwVouitemsEntity2.ISSYS = true;//是否手动录入
CwVouitemsEntity2.FSETTLCODE = "";//结算方式
CwVouitemsEntity2.FSETTLENO = "";//财务辅助编号
CwVouitemsEntity2.MODIFIEDUSER = strUserID;//最后一次更新操作人
CwVouitemsEntity2.BLNO = "";//BILLNOstrBILLNOALL
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
CwVouitemsEntity2.BLNO = dsVWChFeeSettlementDo.Tables[0].Rows[j]["mblno"].ToString().Trim();//BILLNO
}
CwVouitemsEntities.Add(CwVouitemsEntity2);
}
//}
#endregion
*/
#endregion
#region 插入明细表 财务费用和现金分开生成
/*
#region 插入明细表 实付支资料 现金、账户,收入\成本 生成 全额\差额
for (int j = 0; j < dsVWChFeeSettlementDo.Tables[0].Rows.Count; j++)
{
CwVouitemsEntity CwVouitemsEntity2 = new CwVouitemsEntity();
//CwVouitemsEntity2.GID 唯一编码 newid()
CwVouitemsEntity2.ORDNO = strORDNO.Trim();
CwVouitemsEntity2.ITEMNO = n;// 行号
CwVouitemsEntity2.PACCID = "";//父级科目贷码
CwVouitemsEntity2.PROPERTY = 0;//科目属性
CwVouitemsEntity2.GRADE = 0;//科目级别
Decimal dl = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_JE"].ToString().Trim());
if (dl != 0)
{
n = n + 1;
if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["FEETYPE"].ToString().Trim() == "应收账款")
{
#region 实收支资料
if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_CURRENCY"].ToString().Trim() == "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = 0;//本位币借方金额(互斥)
strJie = strJie + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_HJ"].ToString().Trim());
CwVouitemsEntity2.ISFCY = false;//是否外币
CwVouitemsEntity2.FCYNO = "RMB";//外币编号usd
CwVouitemsEntity2.FCYDR = 0;//外币借方金额
CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "D";//借方向
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_CURRENCY"].ToString().Trim() == "USD")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = 0;//本位币借方金额(互斥)
strJie = strJie + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_HJ"].ToString().Trim());
CwVouitemsEntity2.ISFCY = true;//是否外币
CwVouitemsEntity2.FCYNO = "USD";//外币编号usd
CwVouitemsEntity2.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "D";//借方向
}
CwVouitemsEntity2.CORPID = "";//客户(系统)
CwVouitemsEntity2.CUSTOMERNAME = "";//客户(系统)
strBPVW = dsCwDesign.Tables[0].Rows[0]["BRTW"].ToString().Trim();
#endregion
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["FEETYPE"].ToString().Trim() == "应付账款")
{
#region 实付支资料
if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_CURRENCY"].ToString().Trim() == "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
strDai = strDai + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_HJ"].ToString().Trim());
CwVouitemsEntity2.ISFCY = false;//是否外币
CwVouitemsEntity2.FCYNO = "RMB";//外币编号usd
CwVouitemsEntity2.FCYDR = 0;//外币借方金额
CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "C";//贷方向
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_CURRENCY"].ToString().Trim() == "USD")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
strDai = strDai + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_HJ"].ToString().Trim());
CwVouitemsEntity2.ISFCY = true;//是否外币
CwVouitemsEntity2.FCYNO = "USD";//外币编号usd
CwVouitemsEntity2.FCYDR = 0;//外币借方金额
CwVouitemsEntity2.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_MONEY_JE"].ToString().Trim());//外币贷方金额
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "C";//贷方向
}
CwVouitemsEntity2.CORPID = "";//客户(系统)
CwVouitemsEntity2.CUSTOMERNAME = "";//客户(系统)
strBPVW = dsCwDesign.Tables[0].Rows[0]["BPVW"].ToString().Trim();
#endregion
}
}
else
{
continue;
}
CwVouitemsEntity2.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_RATE"].ToString().Trim());//汇率
dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["AHSR_RATE"].ToString().Trim());//汇率
CwVouitemsEntity2.QTYUNIT = "";//数量包装单位
CwVouitemsEntity2.QTYDR = 0;//借方数量
CwVouitemsEntity2.QTYCR = 0;//贷方数量
//
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strSelEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["CUSTNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["MBLNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["VESSEL"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["VOYNO"].ToString().Trim() + "'";
}
//
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["CUSTOMERNAME"].ToString().Trim() + "'" + strSelEXPLAN;//BILLNO
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
}
//
CwVouitemsEntity2.EXPLAN = strEXPLAN;//摘要规则生成ALL
CwVouitemsEntity2.DEPTID = "";//strDEPTID;//部门(系统)
CwVouitemsEntity2.EMPLID = "";//strEMPLID;//人员(系统)
CwVouitemsEntity2.SALE = "";//strSALE;//人员名称
CwVouitemsEntity2.PITEMID = 0;//父级项目编号
CwVouitemsEntity2.ITEMID = "0";//项目编号
CwVouitemsEntity2.FIELD1 = "";//预留字段1
CwVouitemsEntity2.FIELD2 = "";//预留字段2
CwVouitemsEntity2.FIELD3 = "";//预留字段3
CwVouitemsEntity2.FIELD4 = "";//预留字段4
CwVouitemsEntity2.FIELD5 = "";//预留字段5
CwVouitemsEntity2.FIELD6 = "";//预留字段6
CwVouitemsEntity2.FIELD7 = "";//预留字段7
CwVouitemsEntity2.FIELD8 = "";//预留字段8
CwVouitemsEntity2.FIELD9 = "";//预留字段9
CwVouitemsEntity2.FIELD10 = "";//预留字段10
CwVouitemsEntity2.ISSYS = true;//是否手动录入
CwVouitemsEntity2.FSETTLCODE = "";//结算方式
CwVouitemsEntity2.FSETTLENO = "";//财务辅助编号
CwVouitemsEntity2.MODIFIEDUSER = strUserID;//最后一次更新操作人
CwVouitemsEntity2.BLNO = "";//BILLNOstrBILLNOALL
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
CwVouitemsEntity2.BLNO = dsVWChFeeSettlementDo.Tables[0].Rows[j]["mblno"].ToString().Trim();//BILLNO
}
CwVouitemsEntities.Add(CwVouitemsEntity2);
}
#endregion
#region 插入明细表 财务费用 生成 全额\差额
for (int j = 0; j < dsVWChFeeSettlementDo.Tables[0].Rows.Count; j++)
{
CwVouitemsEntity CwVouitemsEntity3 = new CwVouitemsEntity();
//CwVouitemsEntity3.GID 唯一编码 newid()
CwVouitemsEntity3.ORDNO = strORDNO.Trim();
CwVouitemsEntity3.ITEMNO = n;// 行号
CwVouitemsEntity3.PACCID = "";//父级科目贷码
CwVouitemsEntity3.PROPERTY = 0;//科目属性
CwVouitemsEntity3.GRADE = 0;//科目级别
//
Decimal dl = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());
if (dl != 0)
{
n = n + 1;
if (dsEGOL != null)
{
CwVouitemsEntity3.ACCID = dsCwDesign.Tables[0].Rows[0]["EGOL"].ToString().Trim();//汇兑损益/财务费用科目贷码
if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["FEETYPE"].ToString().Trim() == "应收账款")
{
#region 应收财务费用
if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_CURRENCY"].ToString().Trim() == "RMB")
{
if (dsEGOL.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity3.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = 0;//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
strJie = strJie + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity3.AMTDR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.FCYDR = 0;//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "C";//贷方向
strDai = strDai + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity3.ISFCY = false;//是否外币
CwVouitemsEntity3.FCYNO = "RMB";//外币编号usd
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_CURRENCY"].ToString().Trim() == "USD")
{
if (dsEGOL.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity3.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
strJie = strJie + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity3.AMTDR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.FCYDR = 0;//外币借方金额
CwVouitemsEntity3.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币贷方金额
CwVouitemsEntity3.DC = "C";//贷方向
strDai = strDai + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity3.ISFCY = true;//是否外币
CwVouitemsEntity3.FCYNO = "USD";//外币编号usd
}
#endregion
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["FEETYPE"].ToString().Trim() == "应付账款")
{
#region 应付财务费用
if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_CURRENCY"].ToString().Trim() == "RMB")
{
if (dsEGOL.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")//借贷相反
{
CwVouitemsEntity3.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = 0;//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
strJie = strJie + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity3.AMTDR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.FCYDR = 0;//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "C";//贷方向
strDai = strDai + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity3.ISFCY = false;//是否外币
CwVouitemsEntity3.FCYNO = "RMB";//外币编号usd
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_CURRENCY"].ToString().Trim() == "USD")
{
if (dsEGOL.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")//借贷相反
{
CwVouitemsEntity3.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
strJie = strJie + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity3.AMTDR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.FCYDR = 0;//外币借方金额
CwVouitemsEntity3.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币贷方金额
CwVouitemsEntity3.DC = "C";//贷方向
strDai = strDai + Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity3.ISFCY = true;//是否外币
CwVouitemsEntity3.FCYNO = "USD";//外币编号usd
}
#endregion
}
CwVouitemsEntity3.ACCNAME = dsEGOL.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity3.ISDEPTACC = Boolean.Parse(dsEGOL.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity3.ISEMPLACC = Boolean.Parse(dsEGOL.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity3.ISCORPACC = Boolean.Parse(dsEGOL.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity3.ISITEMACC = Boolean.Parse(dsEGOL.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
CwVouitemsEntity3.CORPID = "";//客户(系统)
CwVouitemsEntity3.CUSTOMERNAME = "";//客户(系统)
}
else
{
continue;
}
}
else
{
continue;
}
//
CwVouitemsEntity3.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_RATE"].ToString().Trim());//汇率
dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[j]["FINANCIAL_RATE"].ToString().Trim());//汇率
CwVouitemsEntity3.QTYUNIT = "";//数量包装单位
CwVouitemsEntity3.QTYDR = 0;//借方数量
CwVouitemsEntity3.QTYCR = 0;//贷方数量
//
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strSelEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["CUSTNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["MBLNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["VESSEL"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["VOYNO"].ToString().Trim() + "'";
}
//
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo.Tables[0].Rows[j]["CUSTOMERNAME"].ToString().Trim() + "'" + strSelEXPLAN;//BILLNO
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
}
//
CwVouitemsEntity3.EXPLAN = strEXPLAN;//摘要规则生成ALL
CwVouitemsEntity3.DEPTID = "";//strDEPTID;//部门(系统)
CwVouitemsEntity3.EMPLID = "";//strEMPLID;//人员(系统)
CwVouitemsEntity3.SALE = "";//strSALE;//人员名称
CwVouitemsEntity3.PITEMID = 0;//父级项目编号
CwVouitemsEntity3.ITEMID = "0";//项目编号
CwVouitemsEntity3.FIELD1 = "";//预留字段1
CwVouitemsEntity3.FIELD2 = "";//预留字段2
CwVouitemsEntity3.FIELD3 = "";//预留字段3
CwVouitemsEntity3.FIELD4 = "";//预留字段4
CwVouitemsEntity3.FIELD5 = "";//预留字段5
CwVouitemsEntity3.FIELD6 = "";//预留字段6
CwVouitemsEntity3.FIELD7 = "";//预留字段7
CwVouitemsEntity3.FIELD8 = "";//预留字段8
CwVouitemsEntity3.FIELD9 = "";//预留字段9
CwVouitemsEntity3.FIELD10 = "";//预留字段10
CwVouitemsEntity3.ISSYS = true;//是否手动录入
CwVouitemsEntity3.FSETTLCODE = "";//结算方式
CwVouitemsEntity3.FSETTLENO = "";//财务辅助编号
CwVouitemsEntity3.MODIFIEDUSER = strUserID;//最后一次更新操作人
CwVouitemsEntity3.BLNO = "";//BILLNO strBILLNOALL
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
CwVouitemsEntity3.BLNO = dsVWChFeeSettlementDo.Tables[0].Rows[j]["mblno"].ToString().Trim();//BILLNO
}
CwVouitemsEntities.Add(CwVouitemsEntity3);
}
#endregion
*/
#endregion
//end
///////////////////////////////////////////////////////
#region 插入明细表 实付支资料 账户,收入\成本 生成 全额\差额
for (int i = 0; i < dsVWChFeeSettlementDo_Z.Tables[0].Rows.Count; i++)
{
CwVouitemsEntity CwVouitemsEntity2 = new CwVouitemsEntity();
//CwVouitemsEntity2.GID 唯一编码 newid()
CwVouitemsEntity2.ORDNO = strORDNO.Trim();
CwVouitemsEntity2.ITEMNO = n;// 行号
CwVouitemsEntity2.PACCID = "";//父级科目贷码
CwVouitemsEntity2.PROPERTY = 0;//科目属性
CwVouitemsEntity2.GRADE = 0;//科目级别
Decimal dl = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());
if (dl != 0)
{
if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应收账款")
{
#region 实收支资料
if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
continue;
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
continue;
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity2.FCYDR = 0;//外币借方金额
CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
//
CwVouitemsEntity2.ISFCY = false;//是否外币
CwVouitemsEntity2.FCYNO = "RMB";//外币编号usd
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "D";//借方向
}
else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() != "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
continue;
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
continue;
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity2.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
//
CwVouitemsEntity2.ISFCY = true;//是否外币
CwVouitemsEntity2.FCYNO = "USD";//外币编号usd
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "D";//借方向
}
//CwVouitemsEntity2.CORPID = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
//CwVouitemsEntity2.CUSTOMERNAME = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity2.CORPID = "";//客户(系统)
CwVouitemsEntity2.CUSTOMERNAME = "";//客户(系统)
strBPVW = dsCwDesign.Tables[0].Rows[0]["BRTW"].ToString().Trim();
#endregion
#region 实收支摘要
if (isButtSettlement == true || ISADVANCE.Trim() == "False")
{
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strSelEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAR = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAR"].ToString().Trim();
//if (sRPEXPLANAR.IndexOf("《结算单位》") > -1)
//{
// strSelEXPLAN += " and CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'";
//}
if (sRPEXPLANAR.IndexOf("《委托编号》") > -1)
{
//strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《主提单号》") > -1)
{
//strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《船名》") > -1)
{
//strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《航次》") > -1)
{
//strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《申请单号》") > -1)
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《委托单位》") > -1)
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
//
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and ACCOUNTRMB='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "' and ACCOUNTUSD='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'" + strSelEXPLAN;
}
else
{
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and ACCOUNTRMB='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "' and ACCOUNTUSD='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
}
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAR = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAR"].ToString().Trim();
if (sRPEXPLANAR.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托编号》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《主提单号》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《船名》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《航次》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAR;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim();
}
}
}
#endregion
}
else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应付账款")
{
#region 实付支资料
if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
continue;
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
continue;
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity2.FCYDR = 0;//外币借方金额
CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
//
CwVouitemsEntity2.ISFCY = false;//是否外币
CwVouitemsEntity2.FCYNO = "RMB";//外币编号usd
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "C";//贷方向
}
else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() != "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
continue;
}
CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
continue;
}
CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity2.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity2.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity2.FCYDR = 0;//外币借方金额
CwVouitemsEntity2.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币贷方金额
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
//
CwVouitemsEntity2.ISFCY = true;//是否外币
CwVouitemsEntity2.FCYNO = "USD";//外币编号usd
CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity2.DC = "C";//贷方向
}
//CwVouitemsEntity2.CORPID = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FAPCODE"].ToString().Trim();//客户(系统)
//CwVouitemsEntity2.CUSTOMERNAME = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity2.CORPID = "";//客户(系统)
CwVouitemsEntity2.CUSTOMERNAME = "";//客户(系统)
strBPVW = dsCwDesign.Tables[0].Rows[0]["BPVW"].ToString().Trim();
#endregion
#region 实收支摘要
if (isButtSettlement == true || ISADVANCE.Trim() == "False")
{
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strSelEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAP = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAP"].ToString().Trim();
//if (sRPEXPLANAP.IndexOf("《结算单位》") > -1)
//{
// strSelEXPLAN += " and CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'";
//}
if (sRPEXPLANAP.IndexOf("《委托编号》") > -1)
{
//strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《主提单号》") > -1)
{
//strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《船名》") > -1)
{
//strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《航次》") > -1)
{
//strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《申请单号》") > -1)
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《委托单位》") > -1)
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
//
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and ACCOUNTRMB='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "' and ACCOUNTUSD='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'" + strSelEXPLAN;
}
else
{
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and ACCOUNTRMB='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "' and ACCOUNTUSD='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
}
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAP = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAP"].ToString().Trim();
if (sRPEXPLANAP.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托编号》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《主提单号》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《船名》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《航次》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAP;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim();
}
}
}
#endregion
}
}
else
{
continue;
}
n = n + 1;
CwVouitemsEntity2.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_RATE"].ToString().Trim());//汇率
dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_RATE"].ToString().Trim());//汇率
CwVouitemsEntity2.QTYUNIT = "";//数量包装单位
CwVouitemsEntity2.QTYDR = 0;//借方数量
CwVouitemsEntity2.QTYCR = 0;//贷方数量
//
CwVouitemsEntity2.EXPLAN = strEXPLAN;//摘要规则生成ALL
CwVouitemsEntity2.DEPTID = "";//strDEPTID;//部门(系统)
CwVouitemsEntity2.EMPLID = "";//strEMPLID;//人员(系统)
CwVouitemsEntity2.SALE = "";//strSALE;//人员名称
CwVouitemsEntity2.PITEMID = 0;//父级项目编号
CwVouitemsEntity2.ITEMID = "0";//项目编号
CwVouitemsEntity2.FIELD1 = "";//预留字段1
CwVouitemsEntity2.FIELD2 = "";//预留字段2
CwVouitemsEntity2.FIELD3 = "";//预留字段3
CwVouitemsEntity2.FIELD4 = "";//预留字段4
CwVouitemsEntity2.FIELD5 = "";//预留字段5
CwVouitemsEntity2.FIELD6 = "";//预留字段6
CwVouitemsEntity2.FIELD7 = "";//预留字段7
CwVouitemsEntity2.FIELD8 = "";//预留字段8
CwVouitemsEntity2.FIELD9 = "";//预留字段9
CwVouitemsEntity2.FIELD10 = "";//预留字段10
CwVouitemsEntity2.ISSYS = true;//是否手动录入
CwVouitemsEntity2.FSETTLCODE = "";//结算方式
CwVouitemsEntity2.FSETTLENO = "";//财务辅助编号
CwVouitemsEntity2.MODIFIEDUSER = Session["USERID"].ToString().Trim();//最后一次更新操作人
CwVouitemsEntity2.BLNO = "";//BILLNOstrBILLNOALL
//if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
//{
// CwVouitemsEntity2.BLNO = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["mblno"].ToString().Trim();//BILLNO
//}
CwVouitemsEntities.Add(CwVouitemsEntity2);
}
#endregion
#region 插入明细表 实付支资料 现金,收入\成本 生成 全额\差额
Decimal dlAMTDR = 0;//本位币贷方金额(互斥)
Decimal dlAMTCR = 0;//本位币借方金额(互斥)
Decimal dlFCYDR = 0;//外币借方金额
Decimal dlFCYCR = 0;//外币贷方金额
//
for (int i = 0; i < dsVWChFeeSettlementDo_Z.Tables[0].Rows.Count; i++)
{
CwVouitemsEntity CwVouitemsEntity4 = new CwVouitemsEntity();
//CwVouitemsEntity4.GID 唯一编码 newid()
CwVouitemsEntity4.ORDNO = strORDNO.Trim();
CwVouitemsEntity4.ITEMNO = n;// 行号
CwVouitemsEntity4.PACCID = "";//父级科目贷码
CwVouitemsEntity4.PROPERTY = 0;//科目属性
CwVouitemsEntity4.GRADE = 0;//科目级别
Decimal dl = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());
if (dl != 0)
{
if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应收账款")
{
#region 实收支资料
if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
else
{
continue;
}
CwVouitemsEntity4.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
else
{
continue;
}
CwVouitemsEntity4.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity4.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity4.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity4.FCYDR = 0;//外币借方金额
CwVouitemsEntity4.FCYCR = 0;//外币贷方金额
CwVouitemsEntity4.ISFCY = false;//是否外币
CwVouitemsEntity4.FCYNO = "RMB";//外币编号usd
CwVouitemsEntity4.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity4.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity4.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity4.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity4.DC = "D";//借方向
//
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
dlAMTDR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
dlAMTCR += 0;//本位币借方金额(互斥)
dlFCYDR += 0;//外币借方金额
dlFCYCR += 0;//外币贷方金额
}
else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() != "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
else
{
continue;
}
CwVouitemsEntity4.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
else
{
continue;
}
CwVouitemsEntity4.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity4.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity4.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity4.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity4.FCYCR = 0;//外币贷方金额
CwVouitemsEntity4.ISFCY = true;//是否外币
CwVouitemsEntity4.FCYNO = "USD";//外币编号usd
CwVouitemsEntity4.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity4.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity4.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity4.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity4.DC = "D";//借方向
//
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
dlAMTDR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
dlAMTCR += 0;//本位币借方金额(互斥)
dlFCYDR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币借方金额
dlFCYCR += 0;//外币贷方金额
}
//CwVouitemsEntity4.CORPID = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
//CwVouitemsEntity4.CUSTOMERNAME = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity4.CORPID = "";//客户(系统)
CwVouitemsEntity4.CUSTOMERNAME = "";//客户(系统)
strBPVW = dsCwDesign.Tables[0].Rows[0]["BRTW"].ToString().Trim();
#endregion
#region 实收支摘要
if (isButtSettlement == true || ISADVANCE.Trim() == "False")
{
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strSelEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAR = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAR"].ToString().Trim();
//if (sRPEXPLANAR.IndexOf("《结算单位》") > -1)
//{
// strSelEXPLAN += " and CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'";
//}
if (sRPEXPLANAR.IndexOf("《委托编号》") > -1)
{
//strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《主提单号》") > -1)
{
//strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《船名》") > -1)
{
//strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《航次》") > -1)
{
//strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《申请单号》") > -1)
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《委托单位》") > -1)
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
//
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and ACCOUNTRMB='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "' and ACCOUNTUSD='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'" + strSelEXPLAN;
}
else
{
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and ACCOUNTRMB='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "' and ACCOUNTUSD='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
}
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAR = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAR"].ToString().Trim();
if (sRPEXPLANAR.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托编号》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《主提单号》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《船名》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《航次》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAR;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
}
}
#endregion
}
else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应付账款")
{
#region 实付支资料
if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
else
{
continue;
}
CwVouitemsEntity4.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
else
{
continue;
}
CwVouitemsEntity4.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity4.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity4.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity4.FCYDR = 0;//外币借方金额
CwVouitemsEntity4.FCYCR = 0;//外币贷方金额
CwVouitemsEntity4.ISFCY = false;//是否外币
CwVouitemsEntity4.FCYNO = "RMB";//外币编号usd
CwVouitemsEntity4.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity4.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity4.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity4.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity4.DC = "C";//贷方向
//
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
dlAMTDR += 0;//本位币贷方金额(互斥)
dlAMTCR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
dlFCYDR += 0;//外币借方金额
dlFCYCR += 0;//外币贷方金额
}
else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() != "RMB")
{
ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
if (strACCID.Trim() == "")
{
strACCID = "1001";
}
else
{
continue;
}
CwVouitemsEntity4.ACCID = strACCID.Trim();//科目贷码
ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
if (strACCNAME.Trim() == "")
{
strACCNAME = "现金";
}
else
{
continue;
}
CwVouitemsEntity4.ACCNAME = strACCNAME.Trim();//科目名称
//
CwVouitemsEntity4.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity4.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity4.FCYDR = 0;//外币借方金额
CwVouitemsEntity4.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币贷方金额
CwVouitemsEntity4.ISFCY = true;//是否外币
CwVouitemsEntity4.FCYNO = "USD";//外币编号usd
CwVouitemsEntity4.ISDEPTACC = false;//核算部门,按规则设置生成
CwVouitemsEntity4.ISEMPLACC = false;//核算人员,按规则设置生成
CwVouitemsEntity4.ISCORPACC = false;//核算客户,按规则设置生成
CwVouitemsEntity4.ISITEMACC = false;//核算项目,按规则设置生成
CwVouitemsEntity4.DC = "C";//贷方向
//
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
dlAMTDR += 0;//本位币贷方金额(互斥)
dlAMTCR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
dlFCYDR += 0;//外币借方金额
dlFCYCR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币贷方金额
}
//CwVouitemsEntity4.CORPID = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FAPCODE"].ToString().Trim();//客户(系统)
//CwVouitemsEntity4.CUSTOMERNAME = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity4.CORPID = "";//客户(系统)
CwVouitemsEntity4.CUSTOMERNAME = "";//客户(系统)
strBPVW = dsCwDesign.Tables[0].Rows[0]["BPVW"].ToString().Trim();
#endregion
#region 实付支摘要
if (isButtSettlement == true || ISADVANCE.Trim() == "False")
{
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strSelEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAP = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAP"].ToString().Trim();
//if (sRPEXPLANAP.IndexOf("《结算单位》") > -1)
//{
// strSelEXPLAN += " and CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'";
//}
if (sRPEXPLANAP.IndexOf("《委托编号》") > -1)
{
//strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《主提单号》") > -1)
{
//strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《船名》") > -1)
{
//strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《航次》") > -1)
{
//strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《申请单号》") > -1)
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《委托单位》") > -1)
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
//
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and ACCOUNTRMB='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "' and ACCOUNTUSD='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'" + strSelEXPLAN;
}
else
{
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and ACCOUNTRMB='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "' and ACCOUNTUSD='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
}
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAP = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAP"].ToString().Trim();
if (sRPEXPLANAP.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托编号》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《主提单号》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《船名》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《航次》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAP;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
}
}
#endregion
}
}
else
{
continue;
}
n = n + 1;
CwVouitemsEntity4.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_RATE"].ToString().Trim());//汇率
dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_RATE"].ToString().Trim());//汇率
CwVouitemsEntity4.QTYUNIT = "";//数量包装单位
CwVouitemsEntity4.QTYDR = 0;//借方数量
CwVouitemsEntity4.QTYCR = 0;//贷方数量
//
CwVouitemsEntity4.EXPLAN = strEXPLAN;//摘要规则生成ALL
CwVouitemsEntity4.DEPTID = "";//strDEPTID;//部门(系统)
CwVouitemsEntity4.EMPLID = "";//strEMPLID;//人员(系统)
CwVouitemsEntity4.SALE = "";//strSALE;//人员名称
CwVouitemsEntity4.PITEMID = 0;//父级项目编号
CwVouitemsEntity4.ITEMID = "0";//项目编号
CwVouitemsEntity4.FIELD1 = "";//预留字段1
CwVouitemsEntity4.FIELD2 = "";//预留字段2
CwVouitemsEntity4.FIELD3 = "";//预留字段3
CwVouitemsEntity4.FIELD4 = "";//预留字段4
CwVouitemsEntity4.FIELD5 = "";//预留字段5
CwVouitemsEntity4.FIELD6 = "";//预留字段6
CwVouitemsEntity4.FIELD7 = "";//预留字段7
CwVouitemsEntity4.FIELD8 = "";//预留字段8
CwVouitemsEntity4.FIELD9 = "";//预留字段9
CwVouitemsEntity4.FIELD10 = "";//预留字段10
CwVouitemsEntity4.ISSYS = true;//是否手动录入
CwVouitemsEntity4.FSETTLCODE = "";//结算方式
CwVouitemsEntity4.FSETTLENO = "";//财务辅助编号
CwVouitemsEntity4.MODIFIEDUSER = Session["USERID"].ToString().Trim();//最后一次更新操作人
CwVouitemsEntity4.BLNO = "";//BILLNOstrBILLNOALL
//if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
//{
// CwVouitemsEntity4.BLNO = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["mblno"].ToString().Trim();//BILLNO
//}
CwVouitemsEntities.Add(CwVouitemsEntity4);
}
//if (CwVouitemsEntity4.FCYNO != null)
//{
// CwVouitemsEntity4.AMTDR = dlAMTDR;//本位币贷方金额(互斥)
// CwVouitemsEntity4.AMTCR = dlAMTCR;//本位币借方金额(互斥)
// CwVouitemsEntity4.FCYDR = dlFCYDR;//外币借方金额
// CwVouitemsEntity4.FCYCR = dlFCYCR;//外币贷方金额
// CwVouitemsEntities.Add(CwVouitemsEntity4);
//}
#endregion
///////////////////////////////////////////////////////
///////////////////////////////////////////////////////
#region 插入明细表 应收账款、应付账款
for (int i = 0; i < dsVWChFeeSettlementDo.Tables[0].Rows.Count; i++)
{
CwVouitemsEntity CwVouitemsEntity = new CwVouitemsEntity();
//CwVouitemsEntity.GID 唯一编码 newid()
CwVouitemsEntity.ORDNO = strORDNO.Trim();
CwVouitemsEntity.ITEMNO = n;// 行号
CwVouitemsEntity.PACCID = "";//父级科目贷码
CwVouitemsEntity.PROPERTY = 0;//科目属性
CwVouitemsEntity.GRADE = 0;//科目级别
//
Decimal dl = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
if (dl != 0)
{
n = n + 1;
if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应收账款")
{
#region 应收账款
if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim() == "RMB")
{
if (dsAR != null)
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["AR"].ToString().Trim();//应收账款科目贷码
if (dsAR.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;//预收支资料_金额
strJie += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR += dl;//预收支资料_金额
strDai += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = false;//是否外币
CwVouitemsEntity.FCYNO = "RMB";//外币编号usd
dRMBS += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币借方金额(互斥)
//
CwVouitemsEntity.ACCNAME = dsAR.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsAR.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsAR.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsAR.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsAR.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim() != "RMB")
{
if (dsARFC != null)
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["ARFC"].ToString().Trim();//应收账款外币科目贷码
if (dsARFC.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;//预收支资料_金额
strJie += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币贷方金额
CwVouitemsEntity.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//外币借方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;//预收支资料_金额
strDai += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = true;//是否外币
CwVouitemsEntity.FCYNO = dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim();//外币编号usd
dUSDS += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币借方金额(互斥)
//
CwVouitemsEntity.ACCNAME = dsARFC.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsARFC.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsARFC.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsARFC.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsARFC.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo.Tables[0].Rows[i]["FAPCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
#endregion
#region 应收摘要
//
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strSelEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAR = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAR"].ToString().Trim();
//if (sRPEXPLANAR.IndexOf("《结算单位》") > -1)
//{
// strSelEXPLAN += " and CUSTOMERNAME = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'";
//}
if (sRPEXPLANAR.IndexOf("《委托编号》") > -1)
{
strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《主提单号》") > -1)
{
strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《船名》") > -1)
{
strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《航次》") > -1)
{
strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《申请单号》") > -1)
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (sRPEXPLANAR.IndexOf("《委托单位》") > -1)
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
//
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'" + strSelEXPLAN;//BILLNO
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAR = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAR"].ToString().Trim();
if (sRPEXPLANAR.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托编号》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《主提单号》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《船名》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《航次》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAR;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim();
}
}
}
#endregion
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应付账款")
{
#region 应付账款
if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim() == "RMB")
{
if (dsAP != null)
{
if (dsCwDesign.Tables[0].Rows[0]["ISAPMBSPENDING"].ToString().Trim() == "True")
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["APMBSPENDING"].ToString().Trim();//应付账款科目贷码
}
else
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["AP"].ToString().Trim();//应付账款科目贷码
}
if (dsAP.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;
strJie += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;
strDai += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = false;//是否外币
CwVouitemsEntity.FCYNO = "RMB";//外币编号usd
dRMBF += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币贷方金额(互斥)
if (dsCwDesign.Tables[0].Rows[0]["ISAPMBSPENDING"].ToString().Trim() == "True")
{
if (dsAPMBSPENDING == null)
{
CwVouitemsEntity.ACCNAME = "";//科目名称
}
else
{
CwVouitemsEntity.ACCNAME = dsAPMBSPENDING.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
}
CwVouitemsEntity.CORPID = "";//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = "";//客户(系统)
CwVouitemsEntity.ISCORPACC = false;//核算客户,按规则设置生成
}
else
{
CwVouitemsEntity.ACCNAME = dsAP.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsAP.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
}
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsAP.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsAP.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsAP.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
else if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim() != "RMB")
{
if (dsAPFC != null)
{
if (dsCwDesign.Tables[0].Rows[0]["ISAPTMSFC"].ToString().Trim() == "True")
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["APTMSFC"].ToString().Trim();//应付账款科目贷码
}
else
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["APFC"].ToString().Trim();//应付账款外币科目贷码
}
if (dsAPFC.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//外币贷方金额
CwVouitemsEntity.FCYCR = 0;//外币借方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;
strJie += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//外币贷方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;
strDai += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["hj"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = true;//是否外币
CwVouitemsEntity.FCYNO = dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim();//外币编号usd
dUSDF += Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["je"].ToString().Trim());//本位币贷方金额(互斥)
//
if (dsCwDesign.Tables[0].Rows[0]["ISAPTMSFC"].ToString().Trim() == "True")
{
if (dsAPTMSFC == null)
{
CwVouitemsEntity.ACCNAME = "";//科目名称
}
else
{
CwVouitemsEntity.ACCNAME = dsAPTMSFC.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
}
CwVouitemsEntity.CORPID = "";//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = "";//客户(系统)
CwVouitemsEntity.ISCORPACC = false;//核算客户,按规则设置生成
}
else
{
CwVouitemsEntity.ACCNAME = dsAPFC.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsAPFC.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
}
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsAPFC.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsAPFC.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsAPFC.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
#endregion
#region 应付摘要
//ISRPCLIENTNAME 是否收付客户名称
//ISRPCOTCODE 是否收付业务编号
//ISRPETD 是否收付航期
//ISRPMBLNO 是否收付主提单号
//ISRPCUSTNO 是否收付委托编号
//ISRPVESSEL 是否收付船名
//ISRPVOYNO 是否收付航次
string strSelEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAP = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAP"].ToString().Trim();
//if (sRPEXPLANAP.IndexOf("《结算单位》") > -1)
//{
// strSelEXPLAN += " and CUSTOMERNAME = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'";
//}
if (sRPEXPLANAP.IndexOf("《委托编号》") > -1)
{
strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《主提单号》") > -1)
{
strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《船名》") > -1)
{
strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《航次》") > -1)
{
strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《申请单号》") > -1)
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (sRPEXPLANAP.IndexOf("《委托单位》") > -1)
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["MBLNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["VESSEL"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["VOYNO"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["BILLNO_ACAD"].ToString().Trim() + "'";
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strSelEXPLAN += " and BS_CUSTOMERNAME = '" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["BS_CUSTOMERNAME"].ToString().Trim() + "'";
}
}
//
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'" + strSelEXPLAN;//BILLNO
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAP = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAP"].ToString().Trim();
if (sRPEXPLANAP.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托编号》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《主提单号》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《船名》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《航次》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAP;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim();
}
}
}
#endregion
}
}
else
{
continue;
}
//CwVouitemsEntity.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["ACCOUNTS_RATE"].ToString().Trim());//汇率
//dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["ACCOUNTS_RATE"].ToString().Trim());//汇率
if (dsVWChFeeSettlementDo.Tables[0].Rows[i]["CURRENCY"].ToString().Trim() == "RMB")
{
CwVouitemsEntity.FCYEXRATE = Decimal.Parse("1.00");//汇率
}
else
{
CwVouitemsEntity.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["EXCHANGERATE"].ToString().Trim());//汇率
}
dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo.Tables[0].Rows[i]["EXCHANGERATE"].ToString().Trim());//汇率
CwVouitemsEntity.QTYUNIT = "";//数量包装单位
CwVouitemsEntity.QTYDR = 0;//借方数量
CwVouitemsEntity.QTYCR = 0;//贷方数量
//
CwVouitemsEntity.EXPLAN = strEXPLAN;//摘要,规则生成
//strEXPLANALL = strEXPLAN;
CwVouitemsEntity.DEPTID = "";//strDEPTID;//部门(系统)
CwVouitemsEntity.EMPLID = "";//strEMPLID;//人员(系统)
CwVouitemsEntity.SALE = "";//strSALE;//人员名称
CwVouitemsEntity.PITEMID = 0;//父级项目编号
CwVouitemsEntity.ITEMID = "0";//项目编号
CwVouitemsEntity.FIELD1 = "";//预留字段1
CwVouitemsEntity.FIELD2 = "";//预留字段2
CwVouitemsEntity.FIELD3 = "";//预留字段3
CwVouitemsEntity.FIELD4 = "";//预留字段4
CwVouitemsEntity.FIELD5 = "";//预留字段5
CwVouitemsEntity.FIELD6 = "";//预留字段6
CwVouitemsEntity.FIELD7 = "";//预留字段7
CwVouitemsEntity.FIELD8 = "";//预留字段8
CwVouitemsEntity.FIELD9 = "";//预留字段9
CwVouitemsEntity.FIELD10 = "";//预留字段10
if (dsCwDesign.Tables[0].Rows[0]["ISVBM"].ToString().Trim() == "True")
{
CwVouitemsEntity.ISSYS = false;//是否手动录入
}
else
{
CwVouitemsEntity.ISSYS = true;//是否手动录入
}
CwVouitemsEntity.FSETTLCODE = dsVWChFeeSettlementDo.Tables[0].Rows[i]["SETTLETYPE"].ToString().Trim();//结算方式
CwVouitemsEntity.FSETTLENO = "";//财务辅助编号
CwVouitemsEntity.MODIFIEDUSER = Session["USERID"].ToString().Trim();//最后一次更新操作人
CwVouitemsEntity.BLNO = "";//BILLNO
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
CwVouitemsEntity.BLNO = dsVWChFeeSettlementDo.Tables[0].Rows[i]["mblno"].ToString().Trim();//
}
CwVouitemsEntities.Add(CwVouitemsEntity);
}
#endregion
#region 插入明细表 预收支资料、预付支资料
for (int i = 0; i < dsVWChFeeSettlementDo_Y.Tables[0].Rows.Count; i++)
{
CwVouitemsEntity CwVouitemsEntity = new CwVouitemsEntity();
//CwVouitemsEntity.GID 唯一编码 newid()
CwVouitemsEntity.ORDNO = strORDNO.Trim();
CwVouitemsEntity.ITEMNO = n;// 行号
CwVouitemsEntity.PACCID = "";//父级科目贷码
CwVouitemsEntity.PROPERTY = 0;//科目属性
CwVouitemsEntity.GRADE = 0;//科目级别
//
Decimal dl = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());
if (dl != 0)
{
n = n + 1;
if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应收账款")
{
#region 预收支资料
if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_CURRENCY"].ToString().Trim() == "RMB")
{
if (dsDR != null)
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["DR"].ToString().Trim();//应收账款科目贷码
if (dsDR.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;//预收支资料_金额
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;//预收支资料_金额
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = false;//是否外币
CwVouitemsEntity.FCYNO = "RMB";//外币编号usd
dRMBS += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.ACCNAME = dsDR.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsDR.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsDR.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsDR.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsDR.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
else if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_CURRENCY"].ToString().Trim() != "RMB")
{
if (dsDRFC != null)
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["DRFC"].ToString().Trim();//应收账款外币科目贷码
if (dsDRFC.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;//预收支资料_金额
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币贷方金额
CwVouitemsEntity.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;//预收支资料_金额
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = true;//是否外币
CwVouitemsEntity.FCYNO = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_CURRENCY"].ToString().Trim();//外币编号usd
dUSDS += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.ACCNAME = dsDRFC.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsDRFC.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsDRFC.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsDRFC.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsDRFC.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FAPCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
#endregion
#region 预收支摘要
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "' and ACCOUNTS_MONEY=" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ACCOUNTS_MONEY_JE"].ToString().Trim();// +strSelEXPLAN;
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAR = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAR"].ToString().Trim();
if (sRPEXPLANAR.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托编号》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《主提单号》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《船名》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《航次》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAR;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim();
}
}
}
#endregion
}
else if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应付账款")
{
#region 预付支资料
if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_CURRENCY"].ToString().Trim() == "RMB")
{
if (dsCR != null)
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["CR"].ToString().Trim();//应付账款科目贷码
if (dsCR.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = false;//是否外币
CwVouitemsEntity.FCYNO = "RMB";//外币编号usd
dRMBF += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.ACCNAME = dsCR.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsCR.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsCR.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsCR.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsCR.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
else if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_CURRENCY"].ToString().Trim() != "RMB")
{
if (dsCRFC != null)
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["CRFC"].ToString().Trim();//应付账款外币科目贷码
if (dsCRFC.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//外币贷方金额
CwVouitemsEntity.FCYCR = 0;//外币借方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//外币贷方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;
}
CwVouitemsEntity.ISFCY = true;//是否外币
CwVouitemsEntity.FCYNO = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_CURRENCY"].ToString().Trim();//外币编号usd
dUSDF += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.ACCNAME = dsCRFC.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsCRFC.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsCRFC.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsCRFC.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsCRFC.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
//CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
//CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
#endregion
#region 预收支摘要
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "' and ACCOUNTS_MONEY=" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ACCOUNTS_MONEY_JE"].ToString().Trim();// +strSelEXPLAN;
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAP = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAP"].ToString().Trim();
if (sRPEXPLANAP.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托编号》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《主提单号》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《船名》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《航次》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAP;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim();
}
}
}
#endregion
}
}
else
{
continue;
}
CwVouitemsEntity.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_RATE"].ToString().Trim());//汇率
dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["PREPAY_RATE"].ToString().Trim());//汇率
CwVouitemsEntity.QTYUNIT = "";//数量包装单位
CwVouitemsEntity.QTYDR = 0;//借方数量
CwVouitemsEntity.QTYCR = 0;//贷方数量
//
CwVouitemsEntity.EXPLAN = strEXPLAN;//摘要,规则生成
//strEXPLANALL = strEXPLAN;
CwVouitemsEntity.DEPTID = "";//strDEPTID;//部门(系统)
CwVouitemsEntity.EMPLID = "";//strEMPLID;//人员(系统)
CwVouitemsEntity.SALE = "";//strSALE;//人员名称
CwVouitemsEntity.PITEMID = 0;//父级项目编号
CwVouitemsEntity.ITEMID = "0";//项目编号
CwVouitemsEntity.FIELD1 = "";//预留字段1
CwVouitemsEntity.FIELD2 = "";//预留字段2
CwVouitemsEntity.FIELD3 = "";//预留字段3
CwVouitemsEntity.FIELD4 = "";//预留字段4
CwVouitemsEntity.FIELD5 = "";//预留字段5
CwVouitemsEntity.FIELD6 = "";//预留字段6
CwVouitemsEntity.FIELD7 = "";//预留字段7
CwVouitemsEntity.FIELD8 = "";//预留字段8
CwVouitemsEntity.FIELD9 = "";//预留字段9
CwVouitemsEntity.FIELD10 = "";//预留字段10
if (dsCwDesign.Tables[0].Rows[0]["ISVBM"].ToString().Trim() == "True")
{
CwVouitemsEntity.ISSYS = false;//是否手动录入
}
else
{
CwVouitemsEntity.ISSYS = true;//是否手动录入
}
CwVouitemsEntity.FSETTLCODE = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["SETTLETYPE"].ToString().Trim();//结算方式
CwVouitemsEntity.FSETTLENO = "";//财务辅助编号
CwVouitemsEntity.MODIFIEDUSER = Session["USERID"].ToString().Trim();//最后一次更新操作人
CwVouitemsEntity.BLNO = "";//BILLNO
//if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
//{
// CwVouitemsEntity.BLNO = dsVWChFeeSettlementDo_Y.Tables[0].Rows[0]["mblno"].ToString().Trim();//
//}
//strBILLNOALL = CwVouitemsEntity.BLNO.ToString().Trim();//
CwVouitemsEntities.Add(CwVouitemsEntity);
}
#endregion
///////////////////////////////////////////////////////
//暂时停用
#region 插入明细表 实付支资料 账户合计,收入\成本 生成 全额\差额
//for (int i = 0; i < dsVWChFeeSettlementDo_Z.Tables[0].Rows.Count; i++)
//{
// CwVouitemsEntity CwVouitemsEntity2 = new CwVouitemsEntity();
// //CwVouitemsEntity2.GID 唯一编码 newid()
// CwVouitemsEntity2.ORDNO = strORDNO.Trim();
// CwVouitemsEntity2.ITEMNO = n;// 行号
// CwVouitemsEntity2.PACCID = "";//父级科目贷码
// CwVouitemsEntity2.PROPERTY = 0;//科目属性
// CwVouitemsEntity2.GRADE = 0;//科目级别
// Decimal dl = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());
// if (dl != 0)
// {
// if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应收账款")
// {
// #region 实收支资料
// if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "RMB")
// {
// ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
// string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
// if (strACCID.Trim() == "")
// {
// strACCID = "1001";
// continue;
// }
// CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
// ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
// string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
// if (strACCNAME.Trim() == "")
// {
// strACCNAME = "现金";
// continue;
// }
// CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
// //
// CwVouitemsEntity2.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
// CwVouitemsEntity2.AMTCR = 0;//本位币借方金额(互斥)
// CwVouitemsEntity2.FCYDR = 0;//外币借方金额
// CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
// strJie += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
// //
// CwVouitemsEntity2.ISFCY = false;//是否外币
// CwVouitemsEntity2.FCYNO = "RMB";//外币编号usd
// CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
// CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
// CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
// CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
// CwVouitemsEntity2.DC = "D";//借方向
// }
// else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "USD")
// {
// ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
// string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
// if (strACCID.Trim() == "")
// {
// strACCID = "1001";
// continue;
// }
// CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
// ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
// string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
// if (strACCNAME.Trim() == "")
// {
// strACCNAME = "现金";
// continue;
// }
// CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
// //
// CwVouitemsEntity2.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
// CwVouitemsEntity2.AMTCR = 0;//本位币借方金额(互斥)
// CwVouitemsEntity2.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币借方金额
// CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
// strJie += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
// //
// CwVouitemsEntity2.ISFCY = true;//是否外币
// CwVouitemsEntity2.FCYNO = "USD";//外币编号usd
// CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
// CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
// CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
// CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
// CwVouitemsEntity2.DC = "D";//借方向
// }
// //CwVouitemsEntity2.CORPID = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
// //CwVouitemsEntity2.CUSTOMERNAME = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
// CwVouitemsEntity2.CORPID = "";//客户(系统)
// CwVouitemsEntity2.CUSTOMERNAME = "";//客户(系统)
// strBPVW = dsCwDesign.Tables[0].Rows[0]["BRTW"].ToString().Trim();
// #endregion
// }
// else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应付账款")
// {
// #region 实付支资料
// if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "RMB")
// {
// ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
// string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
// if (strACCID.Trim() == "")
// {
// strACCID = "1001";
// continue;
// }
// CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
// ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
// string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
// if (strACCNAME.Trim() == "")
// {
// strACCNAME = "现金";
// continue;
// }
// CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
// //
// CwVouitemsEntity2.AMTDR = 0;//本位币贷方金额(互斥)
// CwVouitemsEntity2.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
// CwVouitemsEntity2.FCYDR = 0;//外币借方金额
// CwVouitemsEntity2.FCYCR = 0;//外币贷方金额
// strDai += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
// //
// CwVouitemsEntity2.ISFCY = false;//是否外币
// CwVouitemsEntity2.FCYNO = "RMB";//外币编号usd
// CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
// CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
// CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
// CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
// CwVouitemsEntity2.DC = "C";//贷方向
// }
// else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "USD")
// {
// ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
// string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
// if (strACCID.Trim() == "")
// {
// strACCID = "1001";
// continue;
// }
// CwVouitemsEntity2.ACCID = strACCID.Trim();//科目贷码
// ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
// string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
// if (strACCNAME.Trim() == "")
// {
// strACCNAME = "现金";
// continue;
// }
// CwVouitemsEntity2.ACCNAME = strACCNAME.Trim();//科目名称
// //
// CwVouitemsEntity2.AMTDR = 0;//本位币贷方金额(互斥)
// CwVouitemsEntity2.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
// CwVouitemsEntity2.FCYDR = 0;//外币借方金额
// CwVouitemsEntity2.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币贷方金额
// strDai += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
// //
// CwVouitemsEntity2.ISFCY = true;//是否外币
// CwVouitemsEntity2.FCYNO = "USD";//外币编号usd
// CwVouitemsEntity2.ISDEPTACC = false;//核算部门,按规则设置生成
// CwVouitemsEntity2.ISEMPLACC = false;//核算人员,按规则设置生成
// CwVouitemsEntity2.ISCORPACC = false;//核算客户,按规则设置生成
// CwVouitemsEntity2.ISITEMACC = false;//核算项目,按规则设置生成
// CwVouitemsEntity2.DC = "C";//贷方向
// }
// //CwVouitemsEntity2.CORPID = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FAPCODE"].ToString().Trim();//客户(系统)
// //CwVouitemsEntity2.CUSTOMERNAME = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
// CwVouitemsEntity2.CORPID = "";//客户(系统)
// CwVouitemsEntity2.CUSTOMERNAME = "";//客户(系统)
// strBPVW = dsCwDesign.Tables[0].Rows[0]["BPVW"].ToString().Trim();
// #endregion
// }
// }
// else
// {
// continue;
// }
// n = n + 1;
// CwVouitemsEntity2.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_RATE"].ToString().Trim());//汇率
// dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_RATE"].ToString().Trim());//汇率
// CwVouitemsEntity2.QTYUNIT = "";//数量包装单位
// CwVouitemsEntity2.QTYDR = 0;//借方数量
// CwVouitemsEntity2.QTYCR = 0;//贷方数量
// //
// //ISRPCLIENTNAME 是否收付客户名称
// //ISRPCOTCODE 是否收付业务编号
// //ISRPETD 是否收付航期
// //ISRPMBLNO 是否收付主提单号
// //ISRPCUSTNO 是否收付委托编号
// //ISRPVESSEL 是否收付船名
// //ISRPVOYNO 是否收付航次
// //string strSelEXPLAN = "";
// //if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
// //{
// // strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[0]["CUSTNO"].ToString().Trim() + "'";
// //}
// //if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
// //{
// // strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[0]["MBLNO"].ToString().Trim() + "'";
// //}
// //if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
// //{
// // strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo.Tables[0].Rows[0]["VESSEL"].ToString().Trim() + "'";
// //}
// //if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
// //{
// // strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[0]["VOYNO"].ToString().Trim() + "'";
// //}
// //if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
// //{
// // strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim() + "'";
// //}
// //
// sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and ACCOUNTRMB=" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + " and ACCOUNTUSD=" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim();// +strSelEXPLAN;//and CUSTOMERNAME='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'
// DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
// if (ds1 != null)
// {
// //ISCLIENTNAME 是否客户名称
// //ISCUSTNO 是否委托编号
// //ISMBLNO 是否主提单号
// //ISVESSEL 是否船名
// //ISVOYNO 是否航次
// //ISCOTCODE 是否业务编号
// //ISETD 是否航期
// strEXPLAN = "";
// if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
// {
// strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
// }
// if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
// {
// strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
// }
// if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
// {
// strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
// }
// if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
// {
// strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
// }
// if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
// {
// strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
// }
// if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
// {
// strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
// }
// }
// //
// CwVouitemsEntity2.EXPLAN = strEXPLAN;//摘要规则生成ALL
// CwVouitemsEntity2.DEPTID = "";//strDEPTID;//部门(系统)
// CwVouitemsEntity2.EMPLID = "";//strEMPLID;//人员(系统)
// CwVouitemsEntity2.SALE = "";//strSALE;//人员名称
// CwVouitemsEntity2.PITEMID = 0;//父级项目编号
// CwVouitemsEntity2.ITEMID = "0";//项目编号
// CwVouitemsEntity2.FIELD1 = "";//预留字段1
// CwVouitemsEntity2.FIELD2 = "";//预留字段2
// CwVouitemsEntity2.FIELD3 = "";//预留字段3
// CwVouitemsEntity2.FIELD4 = "";//预留字段4
// CwVouitemsEntity2.FIELD5 = "";//预留字段5
// CwVouitemsEntity2.FIELD6 = "";//预留字段6
// CwVouitemsEntity2.FIELD7 = "";//预留字段7
// CwVouitemsEntity2.FIELD8 = "";//预留字段8
// CwVouitemsEntity2.FIELD9 = "";//预留字段9
// CwVouitemsEntity2.FIELD10 = "";//预留字段10
// CwVouitemsEntity2.ISSYS = true;//是否手动录入
// CwVouitemsEntity2.FSETTLCODE = "";//结算方式
// CwVouitemsEntity2.FSETTLENO = "";//财务辅助编号
// CwVouitemsEntity2.MODIFIEDUSER = strUserID;//最后一次更新操作人
// CwVouitemsEntity2.BLNO = "";//BILLNOstrBILLNOALL
// if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
// {
// CwVouitemsEntity2.BLNO = dsVWChFeeSettlementDo.Tables[0].Rows[0]["mblno"].ToString().Trim();//BILLNO
// }
// CwVouitemsEntities.Add(CwVouitemsEntity2);
//}
#endregion
#region 插入明细表 实付支资料 现金合计,收入\成本 生成 全额\差额
//CwVouitemsEntity CwVouitemsEntity4 = new CwVouitemsEntity();
//Decimal dlAMTDR = 0;//本位币贷方金额(互斥)
//Decimal dlAMTCR = 0;//本位币借方金额(互斥)
//Decimal dlFCYDR = 0;//外币借方金额
//Decimal dlFCYCR = 0;//外币贷方金额
////
//for (int i = 0; i < dsVWChFeeSettlementDo_Z.Tables[0].Rows.Count; i++)
//{
// //CwVouitemsEntity4.GID 唯一编码 newid()
// CwVouitemsEntity4.ORDNO = strORDNO.Trim();
// CwVouitemsEntity4.ITEMNO = n;// 行号
// CwVouitemsEntity4.PACCID = "";//父级科目贷码
// CwVouitemsEntity4.PROPERTY = 0;//科目属性
// CwVouitemsEntity4.GRADE = 0;//科目级别
// Decimal dl = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());
// if (dl != 0)
// {
// if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应收账款")
// {
// #region 实收支资料
// if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "RMB")
// {
// ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
// string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
// if (strACCID.Trim() == "")
// {
// strACCID = "1001";
// }
// else
// {
// continue;
// }
// CwVouitemsEntity4.ACCID = strACCID.Trim();//科目贷码
// ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
// string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
// if (strACCNAME.Trim() == "")
// {
// strACCNAME = "现金";
// }
// else
// {
// continue;
// }
// CwVouitemsEntity4.ACCNAME = strACCNAME.Trim();//科目名称
// //
// CwVouitemsEntity4.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
// CwVouitemsEntity4.AMTCR = 0;//本位币借方金额(互斥)
// CwVouitemsEntity4.FCYDR = 0;//外币借方金额
// CwVouitemsEntity4.FCYCR = 0;//外币贷方金额
// CwVouitemsEntity4.ISFCY = false;//是否外币
// CwVouitemsEntity4.FCYNO = "RMB";//外币编号usd
// CwVouitemsEntity4.ISDEPTACC = false;//核算部门,按规则设置生成
// CwVouitemsEntity4.ISEMPLACC = false;//核算人员,按规则设置生成
// CwVouitemsEntity4.ISCORPACC = false;//核算客户,按规则设置生成
// CwVouitemsEntity4.ISITEMACC = false;//核算项目,按规则设置生成
// CwVouitemsEntity4.DC = "D";//借方向
// //
// strJie += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
// dlAMTDR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
// dlAMTCR += 0;//本位币借方金额(互斥)
// dlFCYDR += 0;//外币借方金额
// dlFCYCR += 0;//外币贷方金额
// }
// else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "USD")
// {
// ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
// string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
// if (strACCID.Trim() == "")
// {
// strACCID = "1001";
// }
// else
// {
// continue;
// }
// CwVouitemsEntity4.ACCID = strACCID.Trim();//科目贷码
// ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
// string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
// if (strACCNAME.Trim() == "")
// {
// strACCNAME = "现金";
// }
// else
// {
// continue;
// }
// CwVouitemsEntity4.ACCNAME = strACCNAME.Trim();//科目名称
// //
// CwVouitemsEntity4.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
// CwVouitemsEntity4.AMTCR = 0;//本位币借方金额(互斥)
// CwVouitemsEntity4.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币借方金额
// CwVouitemsEntity4.FCYCR = 0;//外币贷方金额
// CwVouitemsEntity4.ISFCY = true;//是否外币
// CwVouitemsEntity4.FCYNO = "USD";//外币编号usd
// CwVouitemsEntity4.ISDEPTACC = false;//核算部门,按规则设置生成
// CwVouitemsEntity4.ISEMPLACC = false;//核算人员,按规则设置生成
// CwVouitemsEntity4.ISCORPACC = false;//核算客户,按规则设置生成
// CwVouitemsEntity4.ISITEMACC = false;//核算项目,按规则设置生成
// CwVouitemsEntity4.DC = "D";//借方向
// //
// strJie += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
// dlAMTDR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
// dlAMTCR += 0;//本位币借方金额(互斥)
// dlFCYDR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币借方金额
// dlFCYCR += 0;//外币贷方金额
// }
// //CwVouitemsEntity4.CORPID = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
// //CwVouitemsEntity4.CUSTOMERNAME = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
// CwVouitemsEntity4.CORPID = "";//客户(系统)
// CwVouitemsEntity4.CUSTOMERNAME = "";//客户(系统)
// strBPVW = dsCwDesign.Tables[0].Rows[0]["BRTW"].ToString().Trim();
// #endregion
// }
// else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应付账款")
// {
// #region 实付支资料
// if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "RMB")
// {
// ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
// string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
// if (strACCID.Trim() == "")
// {
// strACCID = "1001";
// }
// else
// {
// continue;
// }
// CwVouitemsEntity4.ACCID = strACCID.Trim();//科目贷码
// ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + "'";
// string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
// if (strACCNAME.Trim() == "")
// {
// strACCNAME = "现金";
// }
// else
// {
// continue;
// }
// CwVouitemsEntity4.ACCNAME = strACCNAME.Trim();//科目名称
// //
// CwVouitemsEntity4.AMTDR = 0;//本位币贷方金额(互斥)
// CwVouitemsEntity4.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
// CwVouitemsEntity4.FCYDR = 0;//外币借方金额
// CwVouitemsEntity4.FCYCR = 0;//外币贷方金额
// CwVouitemsEntity4.ISFCY = false;//是否外币
// CwVouitemsEntity4.FCYNO = "RMB";//外币编号usd
// CwVouitemsEntity4.ISDEPTACC = false;//核算部门,按规则设置生成
// CwVouitemsEntity4.ISEMPLACC = false;//核算人员,按规则设置生成
// CwVouitemsEntity4.ISCORPACC = false;//核算客户,按规则设置生成
// CwVouitemsEntity4.ISITEMACC = false;//核算项目,按规则设置生成
// CwVouitemsEntity4.DC = "C";//贷方向
// //
// strDai += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
// dlAMTDR += 0;//本位币贷方金额(互斥)
// dlAMTCR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
// dlFCYDR += 0;//外币借方金额
// dlFCYCR += 0;//外币贷方金额
// }
// else if (dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_CURRENCY"].ToString().Trim() == "USD")
// {
// ls = "select FINANCESOFTCODE from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
// string strACCID = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", ls);
// if (strACCID.Trim() == "")
// {
// strACCID = "1001";
// }
// else
// {
// continue;
// }
// CwVouitemsEntity4.ACCID = strACCID.Trim();//科目贷码
// ls = "select BANKNAME from sys_bank where gid='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim() + "'";
// string strACCNAME = T_ALL_DA.GetStrSQL("BANKNAME", ls);
// if (strACCNAME.Trim() == "")
// {
// strACCNAME = "现金";
// }
// else
// {
// continue;
// }
// CwVouitemsEntity4.ACCNAME = strACCNAME.Trim();//科目名称
// //
// CwVouitemsEntity4.AMTDR = 0;//本位币贷方金额(互斥)
// CwVouitemsEntity4.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
// CwVouitemsEntity4.FCYDR = 0;//外币借方金额
// CwVouitemsEntity4.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币贷方金额
// CwVouitemsEntity4.ISFCY = true;//是否外币
// CwVouitemsEntity4.FCYNO = "USD";//外币编号usd
// CwVouitemsEntity4.ISDEPTACC = false;//核算部门,按规则设置生成
// CwVouitemsEntity4.ISEMPLACC = false;//核算人员,按规则设置生成
// CwVouitemsEntity4.ISCORPACC = false;//核算客户,按规则设置生成
// CwVouitemsEntity4.ISITEMACC = false;//核算项目,按规则设置生成
// CwVouitemsEntity4.DC = "C";//贷方向
// //
// strDai += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());
// dlAMTDR += 0;//本位币贷方金额(互斥)
// dlAMTCR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
// dlFCYDR += 0;//外币借方金额
// dlFCYCR += Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_MONEY_JE"].ToString().Trim());//外币贷方金额
// }
// //CwVouitemsEntity4.CORPID = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["FAPCODE"].ToString().Trim();//客户(系统)
// //CwVouitemsEntity4.CUSTOMERNAME = dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
// CwVouitemsEntity4.CORPID = "";//客户(系统)
// CwVouitemsEntity4.CUSTOMERNAME = "";//客户(系统)
// strBPVW = dsCwDesign.Tables[0].Rows[0]["BPVW"].ToString().Trim();
// #endregion
// }
// }
// else
// {
// continue;
// }
// CwVouitemsEntity4.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_RATE"].ToString().Trim());//汇率
// dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["AHSR_RATE"].ToString().Trim());//汇率
// CwVouitemsEntity4.QTYUNIT = "";//数量包装单位
// CwVouitemsEntity4.QTYDR = 0;//借方数量
// CwVouitemsEntity4.QTYCR = 0;//贷方数量
// //
// //ISRPCLIENTNAME 是否收付客户名称
// //ISRPCOTCODE 是否收付业务编号
// //ISRPETD 是否收付航期
// //ISRPMBLNO 是否收付主提单号
// //ISRPCUSTNO 是否收付委托编号
// //ISRPVESSEL 是否收付船名
// //ISRPVOYNO 是否收付航次
// //string strSelEXPLAN = "";
// //if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
// //{
// // strSelEXPLAN += " and CUSTNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[0]["CUSTNO"].ToString().Trim() + "'";
// //}
// //if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
// //{
// // strSelEXPLAN += " and MBLNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[0]["MBLNO"].ToString().Trim() + "'";
// //}
// //if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
// //{
// // strSelEXPLAN += " and VESSEL = '" + dsVWChFeeSettlementDo.Tables[0].Rows[0]["VESSEL"].ToString().Trim() + "'";
// //}
// //if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
// //{
// // strSelEXPLAN += " and VOYNO = '" + dsVWChFeeSettlementDo.Tables[0].Rows[0]["VOYNO"].ToString().Trim() + "'";
// //}
// //if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
// //{
// // strSelEXPLAN += " and BILLNO_ACAD = '" + dsVWChFeeSettlementDo.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim() + "'";
// //}
// //
// sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and ACCOUNTRMB=" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTRMB"].ToString().Trim() + " and ACCOUNTUSD=" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["ACCOUNTUSD"].ToString().Trim();// +strSelEXPLAN;// and CUSTOMERNAME='" + dsVWChFeeSettlementDo_Z.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "'
// DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
// if (ds1 != null)
// {
// //ISCLIENTNAME 是否客户名称
// //ISCUSTNO 是否委托编号
// //ISMBLNO 是否主提单号
// //ISVESSEL 是否船名
// //ISVOYNO 是否航次
// //ISCOTCODE 是否业务编号
// //ISETD 是否航期
// strEXPLAN = "";
// if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
// {
// strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
// }
// if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
// {
// strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
// }
// if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
// {
// strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
// }
// if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
// {
// strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
// }
// if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
// {
// strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
// }
// if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
// {
// strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
// }
// }
// //
// CwVouitemsEntity4.EXPLAN = strEXPLAN;//摘要规则生成ALL
// CwVouitemsEntity4.DEPTID = "";//strDEPTID;//部门(系统)
// CwVouitemsEntity4.EMPLID = "";//strEMPLID;//人员(系统)
// CwVouitemsEntity4.SALE = "";//strSALE;//人员名称
// CwVouitemsEntity4.PITEMID = 0;//父级项目编号
// CwVouitemsEntity4.ITEMID = "0";//项目编号
// CwVouitemsEntity4.FIELD1 = "";//预留字段1
// CwVouitemsEntity4.FIELD2 = "";//预留字段2
// CwVouitemsEntity4.FIELD3 = "";//预留字段3
// CwVouitemsEntity4.FIELD4 = "";//预留字段4
// CwVouitemsEntity4.FIELD5 = "";//预留字段5
// CwVouitemsEntity4.FIELD6 = "";//预留字段6
// CwVouitemsEntity4.FIELD7 = "";//预留字段7
// CwVouitemsEntity4.FIELD8 = "";//预留字段8
// CwVouitemsEntity4.FIELD9 = "";//预留字段9
// CwVouitemsEntity4.FIELD10 = "";//预留字段10
// CwVouitemsEntity4.ISSYS = true;//是否手动录入
// CwVouitemsEntity4.FSETTLCODE = "";//结算方式
// CwVouitemsEntity4.FSETTLENO = "";//财务辅助编号
// CwVouitemsEntity4.MODIFIEDUSER = strUserID;//最后一次更新操作人
// CwVouitemsEntity4.BLNO = "";//BILLNOstrBILLNOALL
// if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
// {
// CwVouitemsEntity4.BLNO = dsVWChFeeSettlementDo.Tables[0].Rows[0]["mblno"].ToString().Trim();//BILLNO
// }
//}
//if (CwVouitemsEntity4.FCYNO != null)
//{
// n = n + 1;
// CwVouitemsEntity4.AMTDR = dlAMTDR;//本位币贷方金额(互斥)
// CwVouitemsEntity4.AMTCR = dlAMTCR;//本位币借方金额(互斥)
// CwVouitemsEntity4.FCYDR = dlFCYDR;//外币借方金额
// CwVouitemsEntity4.FCYCR = dlFCYCR;//外币贷方金额
// CwVouitemsEntities.Add(CwVouitemsEntity4);
//}
#endregion
//end
#region 插入明细表 财务费用 生成 全额\差额
CwVouitemsEntity CwVouitemsEntity3 = new CwVouitemsEntity();
dlAMTDR = 0;//本位币贷方金额(互斥)
dlAMTCR = 0;//本位币借方金额(互斥)
dlFCYDR = 0;//外币借方金额
dlFCYCR = 0;//外币贷方金额
//
for (int i = 0; i < dsVWChFeeSettlementDo_Y.Tables[0].Rows.Count; i++)
{
//CwVouitemsEntity3.GID 唯一编码 newid()
CwVouitemsEntity3.ORDNO = strORDNO.Trim();
CwVouitemsEntity3.ITEMNO = n;// 行号
CwVouitemsEntity3.PACCID = "";//父级科目贷码
CwVouitemsEntity3.PROPERTY = 0;//科目属性
CwVouitemsEntity3.GRADE = 0;//科目级别
//
Decimal dl = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
if (dl != 0)
{
if (dsEGOL != null)
{
CwVouitemsEntity3.ACCID = dsCwDesign.Tables[0].Rows[0]["EGOL"].ToString().Trim();//汇兑损益/财务费用科目贷码
if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应收账款")
{
#region 应收财务费用
if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_CURRENCY"].ToString().Trim() == "RMB")
{
if (dsEGOL.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity3.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = 0;//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
//
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
dlAMTDR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
dlAMTCR += 0;//本位币借方金额(互斥)
dlFCYDR += 0;//外币借方金额
dlFCYCR += 0;//外币贷方金额
}
else
{
#region 正常的“财务费用”借贷方。
//CwVouitemsEntity3.AMTDR = 0;//本位币借方金额(互斥)
//CwVouitemsEntity3.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
//CwVouitemsEntity3.FCYDR = 0;//外币借方金额
//CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
//CwVouitemsEntity3.DC = "C";//贷方向
////
//strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
//dlAMTDR += 0;//本位币贷方金额(互斥)
//dlAMTCR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
//dlFCYDR += 0;//外币借方金额
//dlFCYCR += 0;//外币贷方金额
#endregion
#region 因为客户要求“财务费用”必须放到借方,因此如果为贷方,则改为负数放到借方。
Decimal dAMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());
dAMTDR = dAMTDR * (-1);
CwVouitemsEntity3.AMTDR = dAMTDR;//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = 0;//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
//
strJie += dAMTDR;
dlAMTDR += dAMTDR;//本位币贷方金额(互斥)
dlAMTCR += 0;//本位币借方金额(互斥)
dlFCYDR += 0;//外币借方金额
dlFCYCR += 0;//外币贷方金额
#endregion
}
CwVouitemsEntity3.ISFCY = false;//是否外币
CwVouitemsEntity3.FCYNO = "RMB";//外币编号usd
}
else if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_CURRENCY"].ToString().Trim() != "RMB")
{
if (dsEGOL.Tables[0].Rows[0]["DC"].ToString().Trim() == "借")
{
CwVouitemsEntity3.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
//
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
dlAMTDR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
dlAMTCR += 0;//本位币借方金额(互斥)
dlFCYDR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币借方金额
dlFCYCR += 0;//外币贷方金额
}
else
{
#region 正常的“财务费用”借贷方。
//CwVouitemsEntity3.AMTDR = 0;//本位币借方金额(互斥)
//CwVouitemsEntity3.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
//CwVouitemsEntity3.FCYDR = 0;//外币借方金额
//CwVouitemsEntity3.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币贷方金额
//CwVouitemsEntity3.DC = "C";//贷方向
////
//strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
//dlAMTDR += 0;//本位币借方金额(互斥)
//dlAMTCR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
//dlFCYDR += 0;//外币借方金额
//dlFCYCR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币贷方金额
#endregion
#region 因为客户要求“财务费用”必须放到借方,因此如果为贷方,则改为负数放到借方。
Decimal dAMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
dAMTDR = dAMTDR * (-1);
CwVouitemsEntity3.AMTDR = dAMTDR;//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
Decimal dFCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());
dFCYDR = dFCYDR * (-1);
CwVouitemsEntity3.FCYDR = dFCYDR;//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
//
strJie += dAMTDR;
dlAMTDR += dAMTDR;//本位币贷方金额(互斥)
dlAMTCR += 0;//本位币借方金额(互斥)
dlFCYDR += dFCYDR;//外币借方金额
dlFCYCR += 0;//外币贷方金额
#endregion
}
CwVouitemsEntity3.ISFCY = true;//是否外币
CwVouitemsEntity3.FCYNO = "USD";//外币编号usd
}
CwVouitemsEntity3.CORPID = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity3.CUSTOMERNAME = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
#endregion
#region 应收财务费用摘要
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "' and ACCOUNTS_MONEY=" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ACCOUNTS_MONEY_JE"].ToString().Trim();// +strSelEXPLAN;
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAR = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAR"].ToString().Trim();
if (sRPEXPLANAR.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托编号》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《主提单号》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《船名》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《航次》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAR;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim();
}
}
}
#endregion
}
else if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应付账款")
{
#region 应付财务费用
if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_CURRENCY"].ToString().Trim() == "RMB")
{
if (dsEGOL.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")//借贷相反
{
CwVouitemsEntity3.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = 0;//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
//
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
dlAMTDR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
dlAMTCR += 0;//本位币借方金额(互斥)
dlFCYDR += 0;//外币借方金额
dlFCYCR += 0;//外币贷方金额
}
else
{
#region 正常的“财务费用”借贷方。
//CwVouitemsEntity3.AMTDR = 0;//本位币借方金额(互斥)
//CwVouitemsEntity3.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
//CwVouitemsEntity3.FCYDR = 0;//外币借方金额
//CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
//CwVouitemsEntity3.DC = "C";//贷方向
////
//strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
//dlAMTDR += 0;//本位币借方金额(互斥)
//dlAMTCR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
//dlFCYDR += 0;//外币借方金额
//dlFCYCR += 0;//外币贷方金额
#endregion
#region 因为客户要求“财务费用”必须放到借方,因此如果为贷方,则改为负数放到借方。
Decimal dAMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());
dAMTDR = dAMTDR*(-1);
CwVouitemsEntity3.AMTDR = dAMTDR;//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = 0;//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
//
strJie += dAMTDR;
dlAMTDR += dAMTDR;//本位币贷方金额(互斥)
dlAMTCR += 0;//本位币借方金额(互斥)
dlFCYDR += 0;//外币借方金额
dlFCYCR += 0;//外币贷方金额
#endregion
}
CwVouitemsEntity3.ISFCY = false;//是否外币
CwVouitemsEntity3.FCYNO = "RMB";//外币编号usd
}
else if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_CURRENCY"].ToString().Trim() != "RMB")
{
if (dsEGOL.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")//借贷相反
{
CwVouitemsEntity3.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
//
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
dlAMTDR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
dlAMTCR += 0;//本位币借方金额(互斥)
dlFCYDR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币借方金额
dlFCYCR += 0;//外币贷方金额
}
else
{
#region 正常的“财务费用”借贷方。
//CwVouitemsEntity3.AMTDR = 0;//本位币借方金额(互斥)
//CwVouitemsEntity3.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
//CwVouitemsEntity3.FCYDR = 0;//外币借方金额
//CwVouitemsEntity3.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币贷方金额
//CwVouitemsEntity3.DC = "C";//贷方向
////
//strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
//dlAMTDR += 0;//本位币借方金额(互斥)
//dlAMTCR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
//dlFCYDR += 0;//外币借方金额
//dlFCYCR += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());//外币贷方金额
#endregion
#region 因为客户要求“财务费用”必须放到借方,因此如果为贷方,则改为负数放到借方。
Decimal dAMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_HJ"].ToString().Trim());
dAMTDR = dAMTDR * (-1);
CwVouitemsEntity3.AMTDR = dAMTDR;//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = 0;//本位币借方金额(互斥)
Decimal dFCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_MONEY_JE"].ToString().Trim());
dFCYDR = dFCYDR * (-1);
CwVouitemsEntity3.FCYDR = dFCYDR;//外币借方金额
CwVouitemsEntity3.FCYCR = 0;//外币贷方金额
CwVouitemsEntity3.DC = "D";//借方向
//
strJie += dAMTDR;
dlAMTDR += dAMTDR;//本位币贷方金额(互斥)
dlAMTCR += 0;//本位币借方金额(互斥)
dlFCYDR += dFCYDR;//外币借方金额
dlFCYCR += 0;//外币贷方金额
#endregion
}
CwVouitemsEntity3.ISFCY = true;//是否外币
CwVouitemsEntity3.FCYNO = "USD";//外币编号usd
}
CwVouitemsEntity3.CORPID = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FAPCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity3.CUSTOMERNAME = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
#endregion
#region 应付财务费用摘要
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "' and ACCOUNTS_MONEY=" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ACCOUNTS_MONEY_JE"].ToString().Trim();// +strSelEXPLAN;
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAP = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAP"].ToString().Trim();
if (sRPEXPLANAP.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托编号》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《主提单号》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《船名》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《航次》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAP;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTOMERNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim();
}
}
}
#endregion
}
CwVouitemsEntity3.ACCNAME = dsEGOL.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity3.ISDEPTACC = Boolean.Parse(dsEGOL.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity3.ISEMPLACC = Boolean.Parse(dsEGOL.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity3.ISCORPACC = Boolean.Parse(dsEGOL.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity3.ISITEMACC = Boolean.Parse(dsEGOL.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
else
{
continue;
}
//
CwVouitemsEntity3.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_RATE"].ToString().Trim());//汇率
dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FINANCIAL_RATE"].ToString().Trim());//汇率
CwVouitemsEntity3.QTYUNIT = "";//数量包装单位
CwVouitemsEntity3.QTYDR = 0;//借方数量
CwVouitemsEntity3.QTYCR = 0;//贷方数量
//
CwVouitemsEntity3.EXPLAN = strEXPLAN;//摘要规则生成ALL
CwVouitemsEntity3.DEPTID = "";//strDEPTID;//部门(系统)
CwVouitemsEntity3.EMPLID = "";//strEMPLID;//人员(系统)
CwVouitemsEntity3.SALE = "";//strSALE;//人员名称
CwVouitemsEntity3.PITEMID = 0;//父级项目编号
CwVouitemsEntity3.ITEMID = "0";//项目编号
CwVouitemsEntity3.FIELD1 = "";//预留字段1
CwVouitemsEntity3.FIELD2 = "";//预留字段2
CwVouitemsEntity3.FIELD3 = "";//预留字段3
CwVouitemsEntity3.FIELD4 = "";//预留字段4
CwVouitemsEntity3.FIELD5 = "";//预留字段5
CwVouitemsEntity3.FIELD6 = "";//预留字段6
CwVouitemsEntity3.FIELD7 = "";//预留字段7
CwVouitemsEntity3.FIELD8 = "";//预留字段8
CwVouitemsEntity3.FIELD9 = "";//预留字段9
CwVouitemsEntity3.FIELD10 = "";//预留字段10
CwVouitemsEntity3.ISSYS = true;//是否手动录入
CwVouitemsEntity3.FSETTLCODE = "";//结算方式
CwVouitemsEntity3.FSETTLENO = "";//财务辅助编号
CwVouitemsEntity3.MODIFIEDUSER = Session["USERID"].ToString().Trim();//最后一次更新操作人
CwVouitemsEntity3.BLNO = "";//BILLNO strBILLNOALL
//if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
//{
// CwVouitemsEntity3.BLNO = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["mblno"].ToString().Trim();//BILLNO
//}
}
if (CwVouitemsEntity3.FCYNO != null)
{
n = n + 1;
CwVouitemsEntity3.AMTDR = dlAMTDR;//本位币贷方金额(互斥)
CwVouitemsEntity3.AMTCR = dlAMTCR;//本位币借方金额(互斥)
CwVouitemsEntity3.FCYDR = dlFCYDR;//外币借方金额
CwVouitemsEntity3.FCYCR = dlFCYCR;//外币贷方金额
CwVouitemsEntities.Add(CwVouitemsEntity3);
}
#endregion
#region 插入明细表 预收支取用资料、预付支取用资料
for (int i = 0; i < dsVWChFeeSettlementDo_Y.Tables[0].Rows.Count; i++)
{
CwVouitemsEntity CwVouitemsEntity = new CwVouitemsEntity();
//CwVouitemsEntity.GID 唯一编码 newid()
CwVouitemsEntity.ORDNO = strORDNO.Trim();
CwVouitemsEntity.ITEMNO = n;// 行号
CwVouitemsEntity.PACCID = "";//父级科目贷码
CwVouitemsEntity.PROPERTY = 0;//科目属性
CwVouitemsEntity.GRADE = 0;//科目级别
//
Decimal dl = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());
if (dl != 0)
{
n = n + 1;
if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应收账款")
{
#region 预收支取用资料
if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_CURRENCY"].ToString().Trim() == "RMB")
{
if (dsDR != null)
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["DR"].ToString().Trim();//应收账款科目贷码
if (dsDR.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")//取用时与预收的借贷相反
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;//预收支资料_金额
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;//预收支资料_金额
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = false;//是否外币
CwVouitemsEntity.FCYNO = "RMB";//外币编号usd
dRMBS += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.ACCNAME = dsDR.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsDR.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsDR.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsDR.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsDR.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
else if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_CURRENCY"].ToString().Trim() != "RMB")
{
if (dsDRFC != null)
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["DRFC"].ToString().Trim();//应收账款外币科目贷码
if (dsDRFC.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")//取用时与预收的借贷相反
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;//预收支资料_金额
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币贷方金额
CwVouitemsEntity.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//外币借方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;//预收支资料_金额
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = true;//是否外币
CwVouitemsEntity.FCYNO = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_CURRENCY"].ToString().Trim();//外币编号usd
dUSDS += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//本位币借方金额(互斥)
CwVouitemsEntity.ACCNAME = dsDRFC.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsDRFC.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsDRFC.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsDRFC.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsDRFC.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FAPCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
#endregion
#region 预收支取用摘要
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "' and ACCOUNTS_MONEY=" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ACCOUNTS_MONEY_JE"].ToString().Trim();// +strSelEXPLAN;
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAR = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAR"].ToString().Trim();
if (sRPEXPLANAR.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托编号》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《主提单号》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《船名》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《航次》") > -1)
{
//sRPEXPLANAR = sRPEXPLANAR.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAR.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAR = sRPEXPLANAR.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAR;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
}
}
#endregion
}
else if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FEETYPE"].ToString().Trim() == "应付账款")
{
#region 预付支取用资料
if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_CURRENCY"].ToString().Trim() == "RMB")
{
if (dsCR != null)
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["CR"].ToString().Trim();//应付账款科目贷码
if (dsCR.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")//取用时与预收的借贷相反
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = 0;//外币贷方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = false;//是否外币
CwVouitemsEntity.FCYNO = "RMB";//外币编号usd
dRMBF += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity.ACCNAME = dsCR.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsCR.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsCR.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsCR.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsCR.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
else if (dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_CURRENCY"].ToString().Trim() != "RMB")
{
if (dsCRFC != null)
{
CwVouitemsEntity.ACCID = dsCwDesign.Tables[0].Rows[0]["CRFC"].ToString().Trim();//应付账款外币科目贷码
if (dsCRFC.Tables[0].Rows[0]["DC"].ToString().Trim() == "贷")//取用时与预收的借贷相反
{
CwVouitemsEntity.AMTDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.AMTCR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.FCYDR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//外币贷方金额
CwVouitemsEntity.FCYCR = 0;//外币借方金额
CwVouitemsEntity.DC = "D";//借方向
iAMTDR = iAMTDR + dl;
strJie += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());
}
else
{
CwVouitemsEntity.AMTDR = 0;//本位币借方金额(互斥)
CwVouitemsEntity.AMTCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.FCYDR = 0;//外币借方金额
CwVouitemsEntity.FCYCR = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//外币贷方金额
CwVouitemsEntity.DC = "C";//贷方向
iAMTCR = iAMTCR + dl;
strDai += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_HJ"].ToString().Trim());
}
CwVouitemsEntity.ISFCY = true;//是否外币
CwVouitemsEntity.FCYNO = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_CURRENCY"].ToString().Trim();//外币编号usd
dUSDF += Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_MONEY_JE"].ToString().Trim());//本位币贷方金额(互斥)
CwVouitemsEntity.CORPID = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["FARCODE"].ToString().Trim();//客户(系统)
CwVouitemsEntity.CUSTOMERNAME = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim();//客户(系统)
CwVouitemsEntity.ACCNAME = dsCRFC.Tables[0].Rows[0]["ACCNAME"].ToString().Trim();//科目名称
CwVouitemsEntity.ISCORPACC = Boolean.Parse(dsCRFC.Tables[0].Rows[0]["ISCORPACC"].ToString().Trim());//核算客户,按规则设置生成
CwVouitemsEntity.ISDEPTACC = Boolean.Parse(dsCRFC.Tables[0].Rows[0]["ISDEPTACC"].ToString().Trim());//核算部门,按规则设置生成
CwVouitemsEntity.ISEMPLACC = Boolean.Parse(dsCRFC.Tables[0].Rows[0]["ISEMPLACC"].ToString().Trim());//核算人员,按规则设置生成
CwVouitemsEntity.ISITEMACC = Boolean.Parse(dsCRFC.Tables[0].Rows[0]["ISITEMACC"].ToString().Trim());//核算项目,按规则设置生成
}
else
{
continue;
}
}
#endregion
#region 预付支取用摘要
sSQL = "select top 1 * from VW_ch_fee_settlement_do where gid_s in(" + sGids.Trim() + ") and CUSTOMERNAME='" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["CUSTOMERNAME"].ToString().Trim() + "' and ACCOUNTS_MONEY=" + dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ACCOUNTS_MONEY_JE"].ToString().Trim();// +strSelEXPLAN;
DataSet ds1 = T_ALL_DA.GetAllSQL(sSQL);
if (ds1 != null)
{
//ISCLIENTNAME 是否客户名称
//ISCUSTNO 是否委托编号
//ISMBLNO 是否主提单号
//ISVESSEL 是否船名
//ISVOYNO 是否航次
//ISCOTCODE 是否业务编号
//ISETD 是否航期
strEXPLAN = "";
if (dsCwDesign.Tables[0].Rows[0]["ISRPEXPLANMODEL"].ToString().Trim() == "True")
{
string sRPEXPLANAP = dsCwDesign.Tables[0].Rows[0]["RPEXPLANAP"].ToString().Trim();
if (sRPEXPLANAP.IndexOf("《结算单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《结算单位》", ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托编号》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《委托编号》", ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《主提单号》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《主提单号》", ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《船名》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《船名》", ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《航次》") > -1)
{
//sRPEXPLANAP = sRPEXPLANAP.Replace("《航次》", ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《申请单号》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《申请单号》", ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim());
}
if (sRPEXPLANAP.IndexOf("《委托单位》") > -1)
{
sRPEXPLANAP = sRPEXPLANAP.Replace("《委托单位》", ds1.Tables[0].Rows[0]["BS_CUSTOMERNAME"].ToString().Trim());
}
strEXPLAN = sRPEXPLANAP;
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISRPCLIENTNAME"].ToString().Trim() == "True")
{
strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTOMERNAME"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPCUSTNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["CUSTNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["MBLNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVESSEL"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VESSEL"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPVOYNO"].ToString().Trim() == "True")
{
//strEXPLAN += " " + ds1.Tables[0].Rows[0]["VOYNO"].ToString().Trim();
}
if (dsCwDesign.Tables[0].Rows[0]["ISRPBILLNO"].ToString().Trim() == "True")
{
strEXPLAN += " 申请单号:" + ds1.Tables[0].Rows[0]["BILLNO_ACAD"].ToString().Trim();
}
}
}
#endregion
}
}
else
{
continue;
}
CwVouitemsEntity.FCYEXRATE = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_RATE"].ToString().Trim());//汇率
dEXCHANGERATE = Decimal.Parse(dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["ADVANCE_RATE"].ToString().Trim());//汇率
CwVouitemsEntity.QTYUNIT = "";//数量包装单位
CwVouitemsEntity.QTYDR = 0;//借方数量
CwVouitemsEntity.QTYCR = 0;//贷方数量
//
CwVouitemsEntity.EXPLAN = strEXPLAN;//摘要,规则生成
//strEXPLANALL = strEXPLAN;
CwVouitemsEntity.DEPTID = "";//strDEPTID;//部门(系统)
CwVouitemsEntity.EMPLID = "";//strEMPLID;//人员(系统)
CwVouitemsEntity.SALE = "";//strSALE;//人员名称
CwVouitemsEntity.PITEMID = 0;//父级项目编号
CwVouitemsEntity.ITEMID = "0";//项目编号
CwVouitemsEntity.FIELD1 = "";//预留字段1
CwVouitemsEntity.FIELD2 = "";//预留字段2
CwVouitemsEntity.FIELD3 = "";//预留字段3
CwVouitemsEntity.FIELD4 = "";//预留字段4
CwVouitemsEntity.FIELD5 = "";//预留字段5
CwVouitemsEntity.FIELD6 = "";//预留字段6
CwVouitemsEntity.FIELD7 = "";//预留字段7
CwVouitemsEntity.FIELD8 = "";//预留字段8
CwVouitemsEntity.FIELD9 = "";//预留字段9
CwVouitemsEntity.FIELD10 = "";//预留字段10
if (dsCwDesign.Tables[0].Rows[0]["ISVBM"].ToString().Trim() == "True")
{
CwVouitemsEntity.ISSYS = false;//是否手动录入
}
else
{
CwVouitemsEntity.ISSYS = true;//是否手动录入
}
CwVouitemsEntity.FSETTLCODE = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["SETTLETYPE"].ToString().Trim();//结算方式
CwVouitemsEntity.FSETTLENO = "";//财务辅助编号
CwVouitemsEntity.MODIFIEDUSER = Session["USERID"].ToString().Trim();//最后一次更新操作人
CwVouitemsEntity.BLNO = "";//BILLNO
//if (dsCwDesign.Tables[0].Rows[0]["ISRPMBLNO"].ToString().Trim() == "True")
//{
// CwVouitemsEntity.BLNO = dsVWChFeeSettlementDo_Y.Tables[0].Rows[i]["mblno"].ToString().Trim();//
//}
//strBILLNOALL = CwVouitemsEntity.BLNO.ToString().Trim();//
CwVouitemsEntities.Add(CwVouitemsEntity);
}
#endregion
///////////////////////////////////////////////////////
#region 插入主表
string rq = sVOUDATE.Trim();
CwVouchersEntity CwVouchersEntity = new CwVouchersEntity();
CwVouchersEntity.ORDNO = strORDNO.Trim();//唯一编码 newid() varchar (36)
CwVouchersEntity.VOUDATE = DateTime.Parse(rq.Trim());//凭证日期="";//datetime="";// 
CwVouchersEntity.ACCYEAR = rq.Trim().Substring(0, 4);//年="";//int="";// 
int iM1 = rq.Trim().IndexOf("-") + 1;
int iM2 = rq.Trim().LastIndexOf("-");
string strACCMONTH = "";
if (iM2 - iM1 == 1)
{
strACCMONTH = "0" + rq.Trim().Substring(iM1, iM2 - iM1);
}
else
{
strACCMONTH = rq.Trim().Substring(iM1, iM2 - iM1);
}
string strVOUNO = "";
strVOUNO = getVOUNO(dsCwDesign, rq.Trim().Substring(0, 4), strACCMONTH);
CwVouchersEntity.VOUNO = strVOUNO;//月初清零 varchar (16)
CwVouchersEntity.ACCMONTH = strACCMONTH;//月="";//int="";// 
string strVOUALLNO = rq.Trim().Substring(0, 4) + strACCMONTH + strVOUNO;
CwVouchersEntity.VOUALLNO = strVOUALLNO;//月初清零 varchar (16)
CwVouchersEntity.VKNO = strBPVW.Trim();//凭证字="";//varchar="";//(8)
CwVouchersEntity.ATTACHS = int.Parse(dsCwDesign.Tables[0].Rows[0]["AFFIXNO"].ToString().Trim());//附件(单据)数="";//int="";// 
CwVouchersEntity.AMTDR = strJie;// iAMTDR;//本位币借方="";//numeric(18, 2)="";// 
CwVouchersEntity.AMTCR = strDai;//iAMTDR;// iAMTCR;//本位币贷方="";//numeric(18, 2)="";// 
CwVouchersEntity.FCY = "";//是否含有外币科目="";//varchar="";//(1)
CwVouchersEntity.QTY = "";//是否含有数量科目="";//varchar="";//(1)
CwVouchersEntity.VOUPROP = "";//凭证属性="";//varchar="";//(1)
//CwVouchersEntity.PREPARED = T_ALL_DA.GetStrSQL("FINANCESOFTCODE", "select top 1 FINANCESOFTCODE from user_baseinfo where USERID in (select top 1 gid from [user] where SHOWNAME='" + this.hd_comboPREPARED.Value.Trim() + "' and ISDELETED=0)");//制单人="";//varchar="";//(10)
CwVouchersEntity.PREPARED = sPREPARED;//制单人="";//varchar="";//(10)
CwVouchersEntity.CHECKED = "";//审核人="";//varchar="";//(10)
CwVouchersEntity.ENTERED = "";//记账人="";//varchar="";//(10)
CwVouchersEntity.ERRMSG = "";//错误信息="";//varchar="";//(6)
CwVouchersEntity.ISDELETE = false;//是否废除="";//bit="";//Y
CwVouchersEntity.DELETEUSER = "";//废除操作人="";//Varchar(36)="";//Y
//CwVouchersEntity.DELETETIME="";//废除时间="";//Datetime="";//Y
#endregion
//生成入库
string strSel = " and gid_s in(" + sGids + ") " + strVESSEL;
iResult = CwVouchersDA.setInsertAll(CwVouchersEntity, CwVouitemsEntities, "VW_ch_fee_settlement_do", strVOUALLNO, strSel, Session["USERID"].ToString().Trim(), 2);
}
else
{
return -1;
}
return iResult;
}
#region 凭证号生成
/// <summary>
/// 凭证号不补漏,顺序生成
/// </summary>
/// <param name="strY"></param>
/// <param name="strM"></param>
/// <returns></returns>
protected String getVOUNO2(DataSet dsCwDesign, string strY, string strM)
{
string sVOUNO = "";
string strVOUNO = "select top 1 VOUNO from cw_vouchers where ACCYEAR='" + strY + "' and ACCMONTH='" + strM + "' order by convert(decimal(10),VOUNO) desc";
strVOUNO = T_ALL_DA.GetStrSQL("VOUNO", strVOUNO);
if (strVOUNO.Trim() == "")
{
strVOUNO = "0001";
}
else
{
sVOUNO = (int.Parse(strVOUNO) + 1).ToString().Trim();
strVOUNO = sVOUNO;
for (int i = 0; i < 4 - sVOUNO.Length;i++)
{
strVOUNO = "0" + strVOUNO;
}
}
return strVOUNO;
}
/// <summary>
/// 凭证号补漏生成
/// </summary>
/// <param name="strY"></param>
/// <param name="strM"></param>
/// <returns></returns>
protected String getVOUNO(DataSet dsCwDesign, string strY, string strM)
{
string sVOUNO = "";
string strVOUNO = "select top 1 VOUNO from cw_vouchers where ACCYEAR='" + strY + "' and ACCMONTH='" + strM + "' and (ISDELETE=0 or ISDELETE is null) order by convert(decimal(10),VOUNO) desc";
strVOUNO = T_ALL_DA.GetStrSQL("VOUNO", strVOUNO);
if (strVOUNO.Trim() == "")
{
strVOUNO = "0001";
DataSet ds = T_ALL_DA.GetAllSQL("select * from code_rule where RULENAME='凭证号' and RULETYPE=5");
if (ds != null)
{
if (ds.Tables[0].Rows.Count > 0)
{
if (ds.Tables[0].Rows[0]["RULENOSTART"].ToString().Trim() != "")
{
strVOUNO = ds.Tables[0].Rows[0]["RULENOSTART"].ToString().Trim();
}
}
}
}
else
{
if (dsCwDesign.Tables[0].Rows[0]["ISFILLSERIALNO"].ToString().Trim() == "True")
{
string strFILL = "select top 1 serialno from code_fill_serialno where ISDELETE=0 and tablename='cw_vouchers' and serialno like '%" + strY + strM + "%' and serialno not in (select VOUALLNO from cw_vouchers where (ISDELETE=0 or ISDELETE is null)) order by serialno";
strFILL = T_ALL_DA.GetStrSQL("serialno", strFILL);
if (strFILL.Trim() != "")
{
strVOUNO = strFILL.Trim().Substring(strFILL.Length - 4);
//strVOUNO = strFILL.Trim().Substring(6);
return strVOUNO;
}
}
sVOUNO = (int.Parse(strVOUNO) + 1).ToString().Trim();
strVOUNO = sVOUNO;
for (int i = 0; i < 4 - sVOUNO.Length; i++)
{
strVOUNO = "0" + strVOUNO;
}
}
return strVOUNO;
}
#endregion
//
}
}