以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  管理员可否帮忙完成一个窗口录入的功能?感激不尽!  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=12976)

--  作者:yacity
--  发布时间:2011/9/22 18:29:00
--  管理员可否帮忙完成一个窗口录入的功能?感激不尽!

由于个人水平有限,做了一个功能,做到最关键地方卡壳了。

发上来希望管理员帮个忙,把最后的功能完善一下。感激不尽!

如图

该功能主要是填充 出货单 和 出货记录,两个表

 

一、双击 出货单 的客户名称 列 弹出 销售单录入 窗口

 


图片点击可在新窗口打开查看此主题相关图片如下:137.jpg
图片点击可在新窗口打开查看

 

二、双击 客户名称 文本框 弹出 销售选客户 窗口。筛选客户后 填充相应的数据,

该 销售选客户 窗口 我已经 做出来了,但是不知道怎么弹出。和填充数据。

 

 
图片点击可在新窗口打开查看此主题相关图片如下:138.jpg
图片点击可在新窗口打开查看

 

三、下面的主表 新增 20行 空白行。供录入销售产品数据。

 


图片点击可在新窗口打开查看此主题相关图片如下:139.jpg
图片点击可在新窗口打开查看

 

四、录入完成后 点击 “过账/打印” 按钮,则把数据分别保存到 “出货单” 和 “出货记录”两个表。

五、销售出货后,最好能减相应的产品库存。

这样的功能如何实现呢?

 

[此贴子已经被作者于2011-9-23 10:04:56编辑过]

--  作者:yacity
--  发布时间:2011/9/22 18:33:00
--  

项目文件

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:儋州琼富塑料管理系统1.0_0922.zip

sql数据库文件

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:qiongfu8.rar

[此贴子已经被作者于2011-9-22 18:33:25编辑过]

--  作者:狐狸爸爸
--  发布时间:2011/9/23 9:16:00
--  

建议:

 

1、以后最好复制一个项目,重定向为内部表,输入或导入一些测试数据,然后再发上来,方便了大家,你才能更快地获得回复。

2、你发上的数据文件,连个后缀名也没有,是mdf的,还是bak的?

 


--  作者:yacity
--  发布时间:2011/9/23 9:54:00
--  

不好意思,我也不知道为什么没有后缀名,上面的是 SQL 2000 直接备份的文件。

 

 

以下是重定为内部数据向后的项目

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:儋州琼富琼富塑料管理系统1.0-0923.zip

 

补充

销售出货后,最好能减相应的产品库存数量。

[此贴子已经被作者于2011-9-23 10:03:04编辑过]

--  作者:狐狸爸爸
--  发布时间:2011/9/23 11:30:00
--  

正常的代码应该是这样:

 

 

Dim tbl As Table = Tables("销售选客户_Table1")
If e.KeyCode = Keys.Up Then
    tbl.Position = tbl.Position - 1
    e.Cancel = True
ElseIf e.KeyCode = Keys.Down Then
    tbl.Position = tbl.Position + 1
    e.Cancel = True
ElseIf e.KeyCode = Keys.Enter Then
    If tbl.Current IsNot Nothing Then
        Tables("chuhuodan").Current("_Identify") = tbl.Current("_Identify")
        Tables("chuhuodan").Current("kehuname") = tbl.Current("kehuname")
        Tables("chuhuodan").Current("tel") = tbl.Current("tel1")
        Tables("chuhuodan").Current("dizhi") = tbl.Current("dizhi")
    End If
    e.Cancel = True   
    e.Form.Close()
End If

 

也就是向出货单写入选择的客户资料,你原来的代码,是向客户表写入选择的客户,当然是不行的。

还有两处类似的代码,你自行修改一下吧。

[此贴子已经被作者于2011-9-23 11:41:53编辑过]

--  作者:yacity
--  发布时间:2011/9/23 15:58:00
--  

双击表中的单元格 kehuname  打开 销售录入 窗口  代码如下:

 

If e.Col.Name = "kehuname" Then
    e.Cancel = True
    Forms("销售录入").Open()
End If

 

 

如果 编辑 textbox  "kehuname" 则打开  窗口  “销售选客户”

 

 

代码怎么写呢?

 


--  作者:狐狸爸爸
--  发布时间:2011/9/23 16:05:00
--  

设置kehuname这个文本框的DoubleClick事件,打开客户选择窗口:

 

Forms("销售选客户").Open()

 

这样可以直接输入客户,也可以双击选择客户。


--  作者:yacity
--  发布时间:2011/9/23 17:10:00
--  

看来我 重定向 数据源没有成功!

不是 可以直接重定向到 内部数据源吗?

 

 


图片点击可在新窗口打开查看此主题相关图片如下:140.jpg
图片点击可在新窗口打开查看

--  作者:狐狸爸爸
--  发布时间:2011/9/23 17:24:00
--  

不是任何数据表都可以重新定向的,对于外部数据表,只有满足下述条件的表才能重定向:

1、主键列的名称为"_Identify",且为自动增量型。
2、必须有一个名称为"_Locked"的逻辑列,用于保存行的锁定标记。


--  作者:lenshen
--  发布时间:2011/9/23 17:33:00
--  
ORACLE 的表可以重定向吗?