1.Public sub test()
2.dim cn, rs, cmd
3.Set cn = createobject("ADODB.Connection")
4.Set rs = createobject("ADODB.Recordset")
5.Set cmd = createobject("ADODB.Command")
6.connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;
DataSource=C:\Users\text\Documents\PrintCenterForm\PrintCernter_v1.accdb;"
7.cn.Open connectionString
8.cmd.ActiveConnection = cn
9.cmd.Execute
10.End sub对不起,伙计们,我昨天发了一张我的代码和错误的照片,但是由于一些奇怪的原因,他们删除了它?
但是无论如何,我在第8行都会收到一个错误:“命令文本没有为命令对象设置。”
我也尝试过重写这段代码,因为它只是坐在这里等待响应是没有用的,但我也尝试过这样做,但似乎无法让它起作用。
1.Set accessApp = GetObject("C:\Users\texthere\Documents\PrintCenterForm\PrintCernter_v1.accdb")
3.Set accessApp = createObject("Access.Applicaiton")
4.accessApp.visible = true
5.accessApp.UserControl = true
6.accessApp.OpenCurrentDataBase
("C:\Users\texthere\Documents\PrintCenterForm\PrintCernter_v
1.accdb"),false
7.accessApp.Run "Qry_DeletePrinted"
8.End Sub在底层代码的第1行中,我遇到了一个错误:"ActiveX组件无法创建对象:'Access.Application‘我很可能不会使用这些代码,除非你们知道使用起来会更容易?我还将OnPrintJobStart改为OnNewRecord,以查看这种方法是否有效,但首先我需要解决编码问题。
我的最终结果,我只是想要一些代码,将启动一个删除查询访问删除记录时,从酒保打印。
在Access调用"Qry_DeletePrinted“中已经有一个delete查询。
这个数据库位于我的C:驱动器DataSource=C:\Users\text\Documents\PrintCenterForm\PrintCernter_v1.accdb上
澄清一下,我使用的是MS Access 2013
正如你们所看到的,我对VB脚本一点也不熟悉
发布于 2019-10-25 11:24:32
下面是这些人帮助我完成的事情,它的作用就像一个魅力!
Dim cn, rs, cmd
set cn = CreateObject("ADODB.Connection")
set rs = CreateObject("ADODB.Recordset")
set cmd = CreateObject("ADODB.Command")
ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data
Source=\\NetworkDriveName\PrintCernter_v1.accdb;"
cn.Open ConnectionString
sql = "Qry_DeletePrinted"
'+ Format.NamedSubStrings("Printed_User").Value
cmd.ActiveConnection = cn
cmd.CommandText = sql
cmd.execute
cn.close发布于 2019-10-10 07:54:42
是的,您可以,VBScript类型的数据源存在于酒保软件中。创建一个新的VBScript数据源,并将脚本类型设置为事件控制脚本。

在Edit with Script Assistant..内部,选择OnPrintStart并注入VBScript连接和delete语句代码。每当标签开始打印时,它都会运行。

首先,您需要通过VBScript:中的酒保打开Access数据库。
Dim cn, rs, cmd
set cn = CreateObject("ADODB.Connection")
set rs = CreateObject("ADODB.Recordset")
set cmd = CreateObject("ADODB.Command")
connectionScring = "Provider=Microsoft.ACE.OLEDB.12.0;
Data Source=C:\Users\text\Documents\PrintCenterForm\PrintCernter_v1.accdb;"
cn.Open connectionScring 第二,您可以准备SQL语句:
注意:这个脚本中的Value是指分配给这个VBScript数据源的值
您可以选择通过标注以下内容来获得其他dataSource值:Format.NamedSubStrings("OtherDataSource").Value
sql = "delete from yourTable where key = '" & Value & "'"
cmd.ActiveConnection = cn
cmd.CommandText = sql
cmd.execute
cn.Close 发布于 2019-10-16 06:59:15
虽然我对VBscript没有太多的经验。不久前,我确实创建了一些东西来删除firebird数据库中的记录。在我看来,您没有给出正确的命令来执行查询/过程。下面是我使用的编码过程,它可以工作。
Const Connection = "DRIVER=Firebird/InterBase(r) driver;UID=SYSDBA;PWD=masterkey;DBNAME=C:\DB\Database.FDB;"
SQL = "execute procedure NameOfProcedure " + Format.NamedSubStrings("TELLER").Value
Set dbconn = CreateObject("ADODB.Connection")
dbconn.Open connection
dbconn.Execute(SQL)
dbconn.Close重要的部分是"SQL“。该过程具有从数据库中删除打印行的代码,BarTender只调用该过程。当然,我们需要告诉它需要删除哪一行。我用一个命名的数据库来表示这个"Teller“。这是与数据库字段ID链接的。
https://stackoverflow.com/questions/58305476
复制相似问题