个人博客 用于记载日常收集的一些技术文章 ...
K3 BOS : 过滤 显示 源单编号 K3 BOS : 过滤 显示 源单编号 -- 过滤 显示 源单编号

update ICClassTableInfo set FCondition = '0,13' ,FDSPFieldName = 'FName' where FClassTypeID = 210001622 and FFieldName = 'FBillNo_SRC'
郭少锋 创建 2023-08-21 16:35:19 K3 BOS
Access : access 关闭窗体 Access : access 关闭窗体 DoCmd.Close ‘关闭当前窗体
DoCmd.Close acForm, "Order Review", acSaveYes '关闭指定窗体
郭少锋 创建 2023-08-17 17:22:00 Access
Access : Access 读取数据 Access : Access 读取数据 Private Sub Form_Open(Cancel As Integer)

Dim aHold As String: aHold = "123456789"
Dim aCode As String: aCode = KeyCode(CStr(Hold))

Dim db As DAO.Database: Set db = CurrentDb
Dim rs As DAO.Recordset: Set rs = db.OpenRecordset("tblPassword", dbOpenTable)

rs.Index = "PrimaryKey"
rs.Seek "=", Me.name

If rs.NoMatch Then
MsgBox "密码不存在": Cancel = -1
Else
If Not (rs![KeyCode] = aCode) Then

MsgBox "密码不正确", vbOKOnly, "提示": Cancel = -1
End If

End If

rs.Close
db.Close

End Sub
郭少锋 创建 2023-08-12 10:53:43 Access
SQL : sql 参数传递 SQL : sql 参数传递 declare @FClassID_SRC bigint;

set @Sql = '
select distinct @P1 = FClassID_SRC from a_StockBillEntry where FID in ( '+ @FID +' )
'
print( @Sql )

exec sp_executeSql @stmt = @Sql ,@params = N'@P1 bigint output' ,@P1 = @FClassID_SRC output
郭少锋 创建 2023-08-04 15:01:57 SQL
SQL : sql 参数传递 SQL : sql 参数传递 declare @out_Nums int ,@in_Score int ,@sql nvarchar(max)

set @in_Score = 90

set @sql = 'select @Nums = count(1) from t_student where Score >= @Score'

exec sp_executeSql @Sql ,N'@Nums int ,@Score int' ,@out_Nums output ,@in_Score

exec sp_executeSql @stmt = @Sql ,@params = N'@Nums int ,@Score int' ,@Nums = @out_Nums output ,@Score = @in_Score

select @out_Nums as '人数'
郭少锋 创建 2023-08-04 14:44:14 SQL
Access : Access 子窗体 自适应 Access : Access 子窗体 自适应 Private Sub 自适应()
On Error Resume Next

DoCmd.Maximize

W = Form.WindowWidth
H = Form.WindowHeight
X = 31679

W1 = IIf(W < 0 Or W > X, X, W)
H1 = IIf(H < 0 Or H > X, X, H)

子1.Width = 1
子1.Left = 1

子1.Width = W1 - 宽度 - 360
子1.Height = H1 - 1200

子1.Left = 宽度 + 180

If W < 0 Or H < 0 Then
提示.Visible = True: 提示.Caption = IIf(W < 0, "【宽度】", "") & IIf(H < 0, "【高度】", "") & "超过 22 英寸 !"
Else
提示.Visible = False
End If

End Sub

Private Sub Form_Load()

自适应
End Sub

Private Sub Form_Activate()
自适应
End Sub

Private Sub Form_Resize()
自适应
End Sub
郭少锋 创建 2023-08-03 22:44:57 Access
Access : Access 读取数据 Access : Access 读取数据 Private Sub Save_Click()

Dim aSql As String: aSql = "select * from Cust where FCustNo = '" & Me.FCustNo.Value & "'"
Dim aTxt As String:

Dim aDatabase As DAO.Database: Set aDatabase = CurrentDb
Dim aRecordset As DAO.Recordset: Set aRecordset = aDatabase.OpenRecordset(aSql)


If Me.FCustId.Value = 0 And aRecordset.RecordCount > 0 Then

aTxt = "戶口編號 " & Me.FCustNo.Value & " 已存在,不能重複增加 !": MsgBox aTxt, vbExclamation, " 注意": Exit Sub
End If

aSql = "insert into Cust (FCustNo,FCustName,FCustAddr) values( '" & Me.FCustNo.Value & "','" & Me.FCustName.Value & "','" & Me.FCustAddr.Value & "'"

If Me.FCustId.Value > 0 Then

aSql = "update Cust set FCustNo = '" & Me.FCustNo.Value & "',FCustName = '" & Me.FCustName.Value & "',FCustAddr = '" & Me.FCustAddr.Value & "' where FCustId = " & Me.FCustId.Value
End If

DoCmd.SetWarnings False: DoCmd.RunSQL aSql
DoCmd.SetWarnings True

Me.FindTxt.Value = Me.FCustName.Value: Me.FindTxt.SetFocus: Call aShow(False)
End Sub

郭少锋 创建 2023-08-03 22:05:28 Access
Access : Access 读取数据 Access : Access 读取数据 下面的代码示例使用 SQL 语句从名为“Employees”的表中检索三个字段,放入 Recordset 对象中。 然后,它使用 GetRows 方法检索 Recordset 的前三条记录,并将所选的记录存储在一个二维数组中。 然后,它通过使用两个数组索引来选择特定字段和记录,从而输出每条记录(一次一个字段)。

为了显示数组索引的使用方式,以下示例使用一个单独的语句来标识和输出每条记录的每个字段。 在实践中,更加可靠的做法是:使用两个相互嵌套的循环,并为逐步执行数组的两个维度的索引提供整数变量。



Sub GetRowsTest()
On Error GoTo aErr

Dim aDatabase As DAO.Database
Dim aRecordset As DAO.Recordset

Dim aSql As String: aSql = "select * from Cust where FCustNo = '" & Me.FCustNo.Value & "'"
Dim aRecords As Variant

Dim aRows As Integer, aRow As Integer '行数
Dim aCols As Integer, aCol As Integer '列数


Set aDatabase = CurrentDb
Set aRecordset = aDatabase.OpenRecordset(aSql)

Debug.Print "记录数: " & aRecordset.RecordCount


'aSql = "UPDATE inventory SET stock = " & stock_new & " WHERE item_no = """ & inItemNo & """"
'aDatabase.Execute aSql

aRecords = aRecordset.GetRows(3)

aRows = UBound(aRecords, 2) + 1
aCols = UBound(aRecords, 1) + 1


aRecordset.MoveFirst '定位记录 移到第一条

For aRow = 0 To aRows - 1

For aCol = 0 To aCols - 1
Debug.Print aRecords(aCol, aRow)
Next aCol


Debug.Print "FCustName: " & aRecordset.Fields("FCustName").Value '读取记录 字段值
aRecordset.MoveNext '定位记录 移到下一条

Next aRow

aRecordset.Close
aDatabase.Close

Set aRecordset = Nothing
Set aDatabase = Nothing

Exit Sub

aErr:
MsgBox "Error #: " & Err.Number & vbCrLf & vbCrLf & Err.Description

End Sub


郭少锋 编辑 2023-08-03 20:57:21 创建 2023-08-03 20:10:22 Access
K3 BOS : Access 隐藏子窗体的列 K3 BOS : Access 隐藏子窗体的列 Me.员工子窗体.Form.姓名.ColumnHidden = True 郭少锋 创建 2023-08-02 16:09:42 K3 BOS Access : Access 跨窗体操作 Access : Access 跨窗体操作 Private Sub FItemId_GotFocus()
On Error Resume Next

Me.FItemId.RowSource = "SELECT Item.FItemId, Item.FItemNo AS 貨號, Item.FItemName AS 貨品, Item.FItemPrice AS [單價$] FROM Item ; "

Forms![Bill]![FEntryId].Value = Me.FEnrtyId.Value
Forms![Bill]![Sub2].Form.RecordSource = "SELECT Item.FItemNo, Item.FItemName, Item.FItemPrice, ListEntry.* FROM Item INNER JOIN ListEntry ON Item.FItemId = ListEntry.FItemId WHERE ListEntry.FEntryid = " & Me.FEnrtyId.Value
Forms![Bill]![Sub2].Form.Requery
End Sub
郭少锋 创建 2023-08-02 03:00:28 Access