如何禁用数据窗口中的单行?
How to disable a single row in a datawindow?
任何人都可以帮助我如何保护单个行的单个列,尽管我的数据窗口不止一行。我正在编写这样的代码:
dw_1.Modify("column_name.protect = '1'")
但是它使我的所有行都被禁用。
您需要为您希望保护的特定 row/column 提供某种条件语句。一种方法是让您以编程方式设置一个额外的字段。
dw_1.setitem(1,"protect_me","Y")
然后在您的另一列中,您在保护 属性 上设置了一个表达式,例如:
if(protect_me[0] = "Y", 1, 0)
你可以让它像:
dw_1.SetRedraw(错误)
ls_modstring = as_columnnane + ".background.color = '" + String(RGB( 255, 255, 255 )) + &
"~tIf( protection = 1," + String(RGB( 192, 192, 192 )) + "," + &
String(RGB( 255, 255, 255)) + ")'"
dw_1.Modify( ls_modstring )
ls_modstring = as_columnnane + ".protect = '0 ~tIf( protection = 1, 1, 0 )'"
dw_1.Modify( ls_modstring )
dw_1.SetRedraw ( TRUE )
其中 as_columnnane 是列名称。
嗨,Santosh Kumar Dutta,
我建议您使用数据窗口保护属性而不是修改语法。
能否请您根据您要保护的领域或条件给我们准确的小代码。
来自 pb_developer
任何人都可以帮助我如何保护单个行的单个列,尽管我的数据窗口不止一行。我正在编写这样的代码:
dw_1.Modify("column_name.protect = '1'")
但是它使我的所有行都被禁用。
您需要为您希望保护的特定 row/column 提供某种条件语句。一种方法是让您以编程方式设置一个额外的字段。
dw_1.setitem(1,"protect_me","Y")
然后在您的另一列中,您在保护 属性 上设置了一个表达式,例如:
if(protect_me[0] = "Y", 1, 0)
你可以让它像: dw_1.SetRedraw(错误)
ls_modstring = as_columnnane + ".background.color = '" + String(RGB( 255, 255, 255 )) + &
"~tIf( protection = 1," + String(RGB( 192, 192, 192 )) + "," + &
String(RGB( 255, 255, 255)) + ")'"
dw_1.Modify( ls_modstring )
ls_modstring = as_columnnane + ".protect = '0 ~tIf( protection = 1, 1, 0 )'"
dw_1.Modify( ls_modstring )
dw_1.SetRedraw ( TRUE )
其中 as_columnnane 是列名称。
嗨,Santosh Kumar Dutta,
我建议您使用数据窗口保护属性而不是修改语法。 能否请您根据您要保护的领域或条件给我们准确的小代码。
来自 pb_developer