以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=28425)

--  作者:wsxdwh
--  发布时间:2013/1/29 10:24:00
--  [求助]

  在表事件prepare eidt 中编写代码:

  If User.IsRole("教研员") Then

If e.Row("区") <> User.Group Then
        e.Cancel = True
If User.IsRole("秘书长") Then
    DataTables("报名表").AllowEdit=True
 
End If
End If
End If

 

目的是教研员(教研员按区分组)可以编辑自己区的报名表,而秘书长可以编辑所有区的报名表。现在是执行时,教研员的权限应用正常,而秘书长不能编辑。代码如何修改。请指教!!

 

请指教,只有开发者才能看见和应用配置栏,其他用户只能看见不能使用,如何编辑代码!!!


--  作者:lin_hailun
--  发布时间:2013/1/29 10:34:00
--  
 直接这样写就行了。

If User.IsRole("教研员") Then
    If e.Row("区") <> User.Group Then
        e.Cancel = True
    End If
End If

--  作者:lin_hailun
--  发布时间:2013/1/29 10:37:00
--  
 隐藏配置栏代码。

If User.Type = UserTypeEnum.Developer Then
    For Each o As object In ConfigBar.Items
        o.visible = False
    Next
End If

--  作者:wsxdwh
--  发布时间:2013/1/29 12:16:00
--  

隐藏配置栏代码放在项目时间和菜单系统事件,都不能隐藏 。请指教!!!

项目  load usersetting

菜单 load usersetting


--  作者:wsxdwh
--  发布时间:2013/1/29 12:50:00
--  

重启后可以用 谢谢!!!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


--  作者:wsxdwh
--  发布时间:2013/1/29 16:39:00
--  

窗口中有一控件“竞赛名称”,可选文本为“2013航海模型”;“2013航空航天模型”等,

现在想将其中的前4 个字符“2013”连接现有字符“年武汉市中小学”再连接其中的剩下的字符“航海模型”及现有字符“竞赛”结果为

“2013年武汉市中小学航海模型竞赛”

如何编写代码  请指教!!!

 

在命令窗口试了一下

 

Dim a As WinForm.ComboBox = Forms("报名表_编排").Controls("竞赛名称")
Dim Str  As  String ="" & a.text & ""
Dim Str1  As  String=str.SubString(0,3)
Output.Show(Str1)

提示错误(上传图片)

 

应用于一下代码中  将r。text的文本变为动态的

Dim doc As New PrintDoc

Dim r As New prt.RenderText

Dim rt As New prt.RenderText

Dim ra1 As New prt.RenderArea

Dim ra2 As New prt.RenderArea

Dim ra3 As New prt.RenderArea

Dim jsmc As WinForm.ComboBox = e.Form.Controls("竞赛名称")

 

\'设置表名

r = New prt.RenderText

r.Text= "2013年武汉市中小学航空航天模型竞赛"

r.Style.FontSize = 14

r.Style.FontBold = True

r.Style.TextAlignHorz = prt.AlignHorzEnum.Center

r.Style.Spacing.Bottom = 5

doc.Body.Children.Add(r)

r = New prt.RenderText

r.Text= "号码对照表"

r.Style.FontSize = 14

r.Style.FontBold = True

r.Style.TextAlignHorz = prt.AlignHorzEnum.Center

r.Style.Spacing.Bottom = 5

doc.Body.Children.Add(r)

 

\'设置一级分组

ra1.Style.Spacing.Bottom = 2

ra1.DataBinding.DataSource = BindTables("报名表")

ra1.DataBinding.Grouping.Expressions.Add("Fields!区.Value")

 

\'打印一级分组的组名

rt.Text= "[Fields!区.Value]:"

rt.Style.FontSize = 12

rt.Style.FontBold = True

rt.Style.Spacing.Bottom = 2

ra1.Children.Add(rt)

\'设置二级分组

ra2 = New Prt.RenderArea

ra2.Style.Spacing.Bottom = 2

ra2.Stacking = prt.StackingRulesEnum.InlineLeftToRight

ra2.DataBinding.DataSource = ra1.DataBinding.DataSource

ra2.DataBinding.Grouping.Expressions.Add("Fields!学校.Value")

ra1.Children.Add(ra2)

 

\'打印二级分组的组名

ra3 = New prt.RenderArea

ra3.Stacking = prt.StackingRulesEnum.InlineLeftToRight

rt = New prt.RenderText

rt.Text= "[Fields!学校.Value]:"

rt.Style.FontSize = 10

rt.Style.FontBold = True

rt.Style.Spacing.Bottom = 2

ra3.Children.Add(rt)

 

ra2.Children.Add(ra3)

 

\'设置标签内容

ra3 = New prt.RenderArea

ra3.Width = 33

ra3.Stacking = prt.StackingRulesEnum.InlineLeftToRight

rt = New prt.RenderText

rt.Text = "[Fields!编号.Value]"

rt.Width = 15

\'rt.Style.FontSize = 9

ra3.Children.Add(rt)

rt = New prt.RenderText

rt.Text = "[Fields!姓名.Value]"

rt.Width = 18

\'rt.Style.FontSize = 9

ra3.DataBinding.DataSource = ra2.DataBinding.DataSource

ra3.Children.Add(rt)

ra2.Children.Add(ra3)

 

 

doc.body.Children.Add(ra1)

Doc.PageSetting.LeftMargin = 25 \'设置左边距

Doc.PageSetting.RightMargin = 15 \'设置右边距

Doc.PageSetting.TopMargin = 20 \'设置上边距

Doc.PageSetting.BottomMargin = 20 \'设置下边距

 

doc.Preview()

\'预览报表

 


--  作者:wsxdwh
--  发布时间:2013/1/29 16:39:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:g67av8tmi_es%$y1~uyinh.jpg
图片点击可在新窗口打开查看

--  作者:lin_hailun
--  发布时间:2013/1/29 16:43:00
--  
 你应该是没有选择文本吧?把这一段放到报表按钮代码头部去执行看看。

Dim a As WinForm.ComboBox = Forms("报名表_编排").Controls("竞赛名称")
Dim Str  As  String = a.text
msgbox("xxx" & str & "xxx")
str = str.SubString(0,3)


--  作者:wsxdwh
--  发布时间:2013/1/29 17:53:00
--  
测试了,不行!
--  作者:lin_hailun
--  发布时间:2013/1/29 18:20:00
--  
以下是引用wsxdwh在2013-1-29 17:53:00的发言:
测试了,不行!


关键是弹出的是什么,是否有值。msgbox

如果没有值的话,就应该是你控件的名称搞错了。你试试用一个新的文本框或者其它控件试试。