Windev - 创建数据库管理(后台)
Windev - Create Database management (Back Office)
我们已将项目任务分配给在 android 平台上使用 Windev Mobile 的团队,任务是在 window 上创建 table 控件(只有一个 window) table 必须能够显示从查询或数据文件中检索到的记录。我们仍然无法找到使 table 控件能够根据数据文件
自动添加列和行的解决方案
为了详细说明我的意思,我和我的团队正在尝试在 Windev Mobile(用于 HFSQL)中创建一个数据库管理器应用程序,我们的任务是制作 2 windows,一个 window 选择哪些数据 table(分析中存在于数据库中的文件),另一个 window 将用于管理(创建、读取、更新、删除)数据table.
内
我们已经能够创建第一个 window,但是第二个 window 目前让我们感到困惑,因为我们需要使使用 window 成为可能包含一个 table,它将 expand/decrease 基于我们加载的数据 table 的列数(例如“客户端数据”数据 table 有 5 个数据 headers (client_name
, client_address
, client_phoneNum
, client_type
, client_eMail
) ,所以 table 应该有 5 列,供应商数据 table 有 10 条数据 headers 所以 table 应该有 10 列)就像当我们打开不同的 excel 文件时 excel 会如何运作
现在我们可以创建灵活的 table,它将显示 table 和来自不同数据文件的列。我们使用 BuildBrowsingTable 来显示列,使用 FileToMemoryTable 来显示记录。 table 控件将根据我们 select 的数据文件自行调整。但是当我们尝试管理 table 上的数据(添加、修改、删除)
时,它会导致问题
FOR i = 1 TO arrAdd.Count()
q.arrAdd = edt
END
注意:q(数据文件)、arrAdd(是 table 上的列)和 edt(编辑控件值)
不幸的是,它不允许我们使用“.”。在这条线上
q.arrAdd = edt // '.'
Unicode 字符串元素上不允许使用运算符
任何建议,如何解决这个问题?
如果有人遇到同样的问题,目前还没有简单的解决方案。我们已经完成了该项目,而使用 Windev 24 执行此操作的唯一方法是
创建 table 控件 (Dispay_Datafile),其中包含分析中的数据文件名称列表。
当行被选中(Display_Datafile)时,数据将显示在其他table控件(Display_Record)上。为此,您必须创建 if 条件以检查所选行上的字符串是否与数据文件名称相同,然后您可以让它显示您在 if 条件内声明的 query/datafile 中的记录。目前这里没有循环的解决方案,你必须为每个数据文件创建 if 语句。
从这里您可以访问query/datafile以在编辑控件
上显示记录
这就是我们目前的做法,希望对您有所帮助
我们已将项目任务分配给在 android 平台上使用 Windev Mobile 的团队,任务是在 window 上创建 table 控件(只有一个 window) table 必须能够显示从查询或数据文件中检索到的记录。我们仍然无法找到使 table 控件能够根据数据文件
自动添加列和行的解决方案为了详细说明我的意思,我和我的团队正在尝试在 Windev Mobile(用于 HFSQL)中创建一个数据库管理器应用程序,我们的任务是制作 2 windows,一个 window 选择哪些数据 table(分析中存在于数据库中的文件),另一个 window 将用于管理(创建、读取、更新、删除)数据table.
内我们已经能够创建第一个 window,但是第二个 window 目前让我们感到困惑,因为我们需要使使用 window 成为可能包含一个 table,它将 expand/decrease 基于我们加载的数据 table 的列数(例如“客户端数据”数据 table 有 5 个数据 headers (client_name
, client_address
, client_phoneNum
, client_type
, client_eMail
) ,所以 table 应该有 5 列,供应商数据 table 有 10 条数据 headers 所以 table 应该有 10 列)就像当我们打开不同的 excel 文件时 excel 会如何运作
现在我们可以创建灵活的 table,它将显示 table 和来自不同数据文件的列。我们使用 BuildBrowsingTable 来显示列,使用 FileToMemoryTable 来显示记录。 table 控件将根据我们 select 的数据文件自行调整。但是当我们尝试管理 table 上的数据(添加、修改、删除)
时,它会导致问题FOR i = 1 TO arrAdd.Count()
q.arrAdd = edt
END
注意:q(数据文件)、arrAdd(是 table 上的列)和 edt(编辑控件值)
不幸的是,它不允许我们使用“.”。在这条线上
q.arrAdd = edt // '.'
Unicode 字符串元素上不允许使用运算符
任何建议,如何解决这个问题?
如果有人遇到同样的问题,目前还没有简单的解决方案。我们已经完成了该项目,而使用 Windev 24 执行此操作的唯一方法是
创建 table 控件 (Dispay_Datafile),其中包含分析中的数据文件名称列表。
当行被选中(Display_Datafile)时,数据将显示在其他table控件(Display_Record)上。为此,您必须创建 if 条件以检查所选行上的字符串是否与数据文件名称相同,然后您可以让它显示您在 if 条件内声明的 query/datafile 中的记录。目前这里没有循环的解决方案,你必须为每个数据文件创建 if 语句。
从这里您可以访问query/datafile以在编辑控件
上显示记录
这就是我们目前的做法,希望对您有所帮助