private void 供应商挂账单_Load(object sender, EventArgs e)
        {
            View_Provider providerInfo = UniversalFunction.GetProviderInfo(_Provider);

            string strSql = "select 挂账年月, 图号型号, 物品名称, 规格, 供应商, 挂账方式 + '挂账' as 挂账方式, 协议单价, 税率, 上月未挂, 本月入库, 本月应挂, " +
                            " 本月未挂, 到票数量, 到票金额, F_Id, GoodsID, 单位 as 计量单位 from View_Bus_PurchasingMG_Account " +
                            " where 挂账年月 = '" + _YearMonth + "' and 供应商 = '" + _Provider + "' and 本月应挂 > 0";
            DataTable tempTable = GlobalObject.DatabaseServer.QueryInfo(strSql);

            reportViewer1.LocalReport.DataSources.Clear();
            List <ReportParameter> para = new List <ReportParameter>();

            //这里是添加两个字段
            para.Add(new ReportParameter("供应商", providerInfo.供应商名称));
            para.Add(new ReportParameter("挂账年月", _YearMonth.Substring(0, 4) + "年" + _YearMonth.Substring(4, 2) + "月"));
            para.Add(new ReportParameter("打印人", BasicInfo.LoginName));


            this.reportViewer1.LocalReport.SetParameters(para);

            ReportDataSource rds = new ReportDataSource("ReportDataSet_View_Bus_PurchasingMG_Account", tempTable);

            reportViewer1.LocalReport.DataSources.Add(rds);
            this.reportViewer1.RefreshReport();
        }
Пример #2
0
        /// <summary>
        /// 获取供应商信息对话框
        /// </summary>
        /// <returns>成功则返回获取到的对话框,失败返回null</returns>
        static public FormQueryInfo GetProviderInfoDialog()
        {
            IProviderServer            m_providerServer = ServerModuleFactory.GetServerModule <IProviderServer>();
            IQueryable <View_Provider> queryResult;

            DepotManagementDataContext ctx = CommentParameter.DepotDataContext;

            if (!m_providerServer.GetAllProvider(out queryResult, out m_err))
            {
                MessageDialog.ShowErrorMessage(m_err);
                return(null);
            }
            queryResult = from r in queryResult
                          where r.是否在用 == true
                          select r;

            if (!BasicInfo.ListRoles.Contains(CE_RoleEnum.采购账务管理员.ToString()) &&
                BasicInfo.ListRoles.Contains(CE_RoleEnum.采购员.ToString()))
            {
                var varData = (from r in ctx.View_Provider
                               join f in ctx.ProviderPrincipal
                               on r.供应商编码 equals f.Provider
                               where f.PrincipalWorkId == BasicInfo.LoginID &&
                               r.是否在用 == true
                               select r).Distinct();

                List <View_Provider> lstProvider = new List <View_Provider>();

                foreach (var item in varData)
                {
                    View_Provider lnqProvider = new View_Provider();

                    lnqProvider.供应商编码   = item.供应商编码;
                    lnqProvider.供应商名称   = item.供应商名称;
                    lnqProvider.简称      = item.简称;
                    lnqProvider.拼音码     = item.拼音码;
                    lnqProvider.零星采购供应商 = item.零星采购供应商;
                    lnqProvider.是否在用    = item.是否在用;
                    lnqProvider.五笔码     = item.五笔码;

                    lstProvider.Add(lnqProvider);
                }

                queryResult = lstProvider.AsQueryable();
            }

            System.Data.DataTable dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_Provider>(queryResult);
            FormQueryInfo         form      = new FormQueryInfo(dataTable);

            return(form);
        }
        private void btnInput_Click(object sender, EventArgs e)
        {
            try
            {
                DataTable dtTemp = ExcelHelperP.RenderFromExcel(openFileDialog1);

                if (dtTemp == null)
                {
                    return;
                }

                if (!dtTemp.Columns.Contains("图号型号"))
                {
                    throw new Exception("文件无【图号型号】列名");
                }

                if (!dtTemp.Columns.Contains("物品名称"))
                {
                    throw new Exception("文件无【物品名称】列名");
                }

                if (!dtTemp.Columns.Contains("规格"))
                {
                    throw new Exception("文件无【规格】列名");
                }

                if (!dtTemp.Columns.Contains("供应商"))
                {
                    throw new Exception("文件无【供应商】列名");
                }

                if (!dtTemp.Columns.Contains("单价"))
                {
                    throw new Exception("文件无【单价】列名");
                }

                if (!dtTemp.Columns.Contains("税率"))
                {
                    throw new Exception("文件无【税率】列名");
                }

                if (!dtTemp.Columns.Contains("有效期开始时间"))
                {
                    throw new Exception("文件无【有效期开始时间】列名");
                }

                if (!dtTemp.Columns.Contains("有效期结束时间"))
                {
                    throw new Exception("文件无【有效期结束时间】列名");
                }


                List <Bus_PurchasingMG_UnitPriceList> lstTemp = new List <Bus_PurchasingMG_UnitPriceList>();

                foreach (DataRow dr in dtTemp.Rows)
                {
                    if ((dr["图号型号"] == null || GlobalObject.GeneralFunction.IsNullOrEmpty(dr["图号型号"].ToString())) &&
                        (dr["物品名称"] == null || GlobalObject.GeneralFunction.IsNullOrEmpty(dr["物品名称"].ToString())) &&
                        (dr["规格"] == null || GlobalObject.GeneralFunction.IsNullOrEmpty(dr["规格"].ToString())))
                    {
                        continue;
                    }

                    Bus_PurchasingMG_UnitPriceList tempInfo = new Bus_PurchasingMG_UnitPriceList();

                    string goodsMessage = "【图号型号】:" + (dr["图号型号"] == null ? "" : dr["图号型号"].ToString().Trim()).ToString()
                                          + "【物品名称】:" + (dr["物品名称"] == null ? "" : dr["物品名称"].ToString().Trim()).ToString()
                                          + "【规格】:" + (dr["规格"] == null ? "" : dr["规格"].ToString().Trim()).ToString();

                    View_F_GoodsPlanCost goodsInfo = UniversalFunction.GetGoodsInfo(dr["图号型号"] == null ? "" : dr["图号型号"].ToString().Trim(),
                                                                                    dr["物品名称"] == null ? "" : dr["物品名称"].ToString().Trim(),
                                                                                    dr["规格"] == null ? "" : dr["规格"].ToString().Trim());

                    if (goodsInfo == null)
                    {
                        throw new Exception("未找到对应的系统物品:" + goodsMessage);
                    }

                    //if (goodsInfo.禁用)
                    //{
                    //    throw new Exception("此物品已被禁用无法导入:" + goodsMessage);
                    //}

                    tempInfo.GoodsID = goodsInfo.序号;

                    string        strProvicer = dr["供应商"] == null ? "" : dr["供应商"].ToString();
                    View_Provider provider    = UniversalFunction.GetProviderInfo(strProvicer);

                    if (provider == null)
                    {
                        throw new Exception("未找到对应的系统供应商:" + strProvicer);
                    }

                    if (!provider.是否在用)
                    {
                        throw new Exception("【系统供应商】:" + strProvicer + " 被禁用,无法导入");
                    }

                    tempInfo.Provider  = provider.供应商编码;
                    tempInfo.Rate      = dr["税率"] == null || dr["税率"].ToString().Trim() == "" ? 0 : Convert.ToInt32(dr["税率"]);
                    tempInfo.UnitPrice = dr["单价"] == null || dr["单价"].ToString().Trim() == "" ? 0 : Convert.ToDecimal(dr["单价"]);

                    if (dr["有效期开始时间"] == null || dr["有效期开始时间"].ToString().Trim() == "")
                    {
                        throw new Exception("有效期开始时间有误:" + goodsMessage);
                    }
                    else
                    {
                        tempInfo.ValidityStart = Convert.ToDateTime(dr["有效期开始时间"]).Date;
                    }

                    if (dr["有效期结束时间"] == null || dr["有效期结束时间"].ToString().Trim() == "")
                    {
                        throw new Exception("有效期结束时间有误:" + goodsMessage);
                    }
                    else
                    {
                        tempInfo.ValidityEnd = Convert.ToDateTime(dr["有效期结束时间"]).Date;
                    }

                    lstTemp.Add(tempInfo);
                }

                _Service_UnitList.SaveInfo(lstTemp);
                MessageDialog.ShowPromptMessage("导入并保存成功");
                DataGridViewShow();
            }
            catch (Exception ex)
            {
                MessageDialog.ShowPromptMessage(ex.Message);
            }
        }