C# winform 单据保存.

问题描述

C#WinForm做单据有引用其他表的字段的表体保存商品资料表:商品编号,商品名称,规格单据明细表:商品编号,数量,单价,金额录入界面中如下:商品编号,商品名称,规格,数量,单价,金额其中商品名称和规格只是起到显示和调用商品记录作用,保存时只保存单据明细中相关字段值。selectCommand:selecta.商品编号,b.商品名称,b.规格,a.数量,a.单价,a.金额from单据明细表a,商品资料表bwherea.商品编号=b.商品编号sqlCommandbuilder不支持基于多个表的更新..这个保存应该怎么处理..还是要用存储过程...

解决方案

解决方案二:
通过sql语句更新吧,存储过程也很好
解决方案三:
將所有數據存放在一臨時表中組合成字符串,sql2005varchar(max)可以達到2G。直接將字符串做為參數直接傳給存儲過程,批量插入或者更新比較好,達到數據的一致性
解决方案四:
StringBuildersb=newStringBuilder();if(dsPublish.Tables[1].Rows.Count>0){for(intm=0;m<dsPublish.Tables[1].Rows.Count;m++){sb.Append(";insertinto#tbValue(valueb,valuec,valued,wono,businessid,partno,deliverydate,deliverytime)");sb.Append("values("+dsPublish.Tables[1].Rows[m]["valueb"].ToString()+","+dsPublish.Tables[1].Rows[m]["valuec"].ToString()+","+dsPublish.Tables[1].Rows[m]["valued"].ToString()+",'"+dsPublish.Tables[1].Rows[m]["wono"].ToString()+"','"+dsPublish.Tables[1].Rows[m]["businessid"].ToString()+"','"+dsPublish.Tables[1].Rows[m]["partno"].ToString()+"','"+dsPublish.Tables[1].Rows[m]["deliverydate"].ToString()+"','"+dsPublish.Tables[1].Rows[m]["deliverytime"].ToString()+"')");}}DbCommandcomand=db.GetStoredProcCommand("Proc_KBjitPublish");db.AddInParameter(comand,"@Str",DbType.String,sb.ToString());if(db.ExecuteNonQuery(comand)>0){returntrue;}else{returnfalse;}
解决方案五:
你的表设计有点问题商品资料表:商品编号,商品名称,规格单据表:单据号,客户,销售时间,总金额单据明细表:单据号,商品编号,商品名称,规格,数量,单价,金额

时间: 2024-10-05 21:52:28

C# winform 单据保存.的相关文章

邮件-c# winform 窗体保存值的问题

问题描述 c# winform 窗体保存值的问题 主窗体 form1 上面有个按钮button1 点击new到 from2 在form2中 有一个定时器 启动后 每30分钟 发送一封邮件 点击保存后from2 要变隐藏窗体 from2的事件一直在执行 现在回到form1 界面 又点击buttion1 new 到from2 又可以开始定时器了 所以说重复了 用单例模式有问题 隐藏的显示不了 我的目的就想 在form2 隐藏之后 点击from1 的button 1 不会重复启动form2 解决方案

Winform中保存当前控件的记录

Winform特有的功能 如何保存当前窗口中所填的信息,方便下次打开 还是这样的,实现如下: 首先,在当前项目中打开Properties--Settings.settings,然后点击,添加字段: 其次,再点击界面中控件的属性,然后选择ApplicationSettings属性,选Text属性,选择刚刚设置的字段 最后,用一个事件来实现数据保存,代码:Settings.Default.Save(); 实现了需要的功能

winform dataset保存问题

问题描述 多年不玩.net了,最近要给人家弄一个小程序:很简单的一个录入界面,n个textBox绑定了dataset中table列,写程序新增保存到数据库,OK!可是,当从数据库查询出来要修改时,这n个textBox中靠后面的几个textBox中的值总是在update时取不到,可在insert时是可以去到的啊.请问这是为何?谢谢! 解决方案 解决方案二:没代码你说个啥解决方案三:没代码你说个锤子啊,撸主看你这描述,指定是代码写的问题咯~解决方案四: 解决方案五:通常,简单的技术问题都是"人品问题

winform的服务端怎么发送音频文件到浏览器上并在网页播放?

问题描述 具体的问题:winform的服务端打开文件发送音频文件到浏览器上并在网页播放(浏览器作为客户端,直接输ip地址和端口号连接我的服务端)怎么弄?是不是需要发送一个http的头信息指明发过来的是什么东西?是的话,需要怎么发呢?求解!!! 解决方案 解决方案二:来个人吭声好吗解决方案三:Html5的Video,或者flash都是可以的解决方案四:引用2楼hanjun0612的回复: Html5的Video,或者flash都是可以的 我发的流的形式,打开一个文件后转成流发过去解决方案五:来个人

使用GUID作为数据表主键的好处

guid|数据 使用GUID作为数据表主键的好处  数据表主健通常采用以下三种方式:   1.         自动递增值. 2.         唯一名称.这个是使用自己定义的算法来生成一个唯一序列号. 3.         GUID(全局唯一标识符).  GUID与自动递增值及唯一名称比较GUID在客户端生成,由GUID的特性决定,通过GUID生成的值可能出现重复的机会几乎等于零,因此保证在插入表的时候主键值唯一. 可以方便处理分布式数据的提交,比如:分店数据向总店提交――直接将该部分数据插

在 WinForm 中完整支持在多级目录中保存的 ASP.NET

asp.net 大概半年前曾写过一个在 WinForm 程序中嵌入 ASP.NET 的简单例子,<在WinForm程序中嵌入ASP.NET>.因为是试验性质的工作,所以当时偷懒直接使用系统自带的 SimpleWorkerRequest 完成 ASP.NET 页面请求的处理工作.使用自带工具类在实现上虽然简单,但受到系统的诸多功能限制,如后面有朋友提到无法直接处理多级子目录的问题等等.(如虚拟目录为 "/" 时无法处理 "/help/about.aspx"

string-关于winform把密码文件保存到本地 明文加密的问题

问题描述 关于winform把密码文件保存到本地 明文加密的问题 File.WriteAllText("setting.ini", textBox1.Text + "," + textBox2.Text); 这句代码是把文本框中的 密码 以明文的方式保存在程序目录下 怎么样 在保存的时候给它加密 在使用正确密码的时候 从setting.ini中读取出来 再解密 加密方式用md5 或者AES 其他的 都可以 请指教! 解决方案 md5不是加密算法,而是hash算法,没

WinForm里编辑HTML,数据库保存,图片

问题描述 在WinForm里编辑HTML后保存到数据库中,但图片保存成一个路径形如:<IMGborder=0hspace=0alt=""align=baselinesrc="C:UsersPublicPicturesSamplePicturesHydrangeas.jpg">到另一台机器上HTML里的图片就显示不出来了,谁有良策? 解决方案 解决方案二:图片路径是本地当然现实不出来,,放在服务器上面,去服务器上面的地址解决方案三:保存到文件夹.....相

如何在winform 里面把图片保存在数据库里,从数据库(access)里显示在窗体上?

问题描述 如何在winform里面把图片保存在数据库(access)里,从数据库(access)里显示在窗体上?需要详细代码. 解决方案 解决方案二:学习..解决方案三:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.For