Foxtable(狐表)用户栏目专家坐堂 → DrawCell


  共有5587人关注过本帖树形打印复制链接

主题:DrawCell

帅哥哟,离线,有人找我吗?
zoyong
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:670 积分:7958 威望:0 精华:0 注册:2015/8/24 9:02:00
DrawCell  发帖心情 Post By:2019/1/13 15:39:00 [显示全部帖子]

窗口AfterLoad代码:

'绘制  (样式名称,背景色,字体色)

DataTables(e.Form.name & "_table1").AddUserStyle("取消投标", Color.White, Color.Purple)



窗口DrawCell代码:


If e.Row("取消投标") = True Then         '标记列
    e.Style = "取消投标"
    Dim fnt As New Font("宋体",10,FontStyle.Strikeout)       ‘删除线
    CurrentTable.Font = fnt
End If

红色代码,表中全部行都显示了
只想显示e.Row("取消投标") = True的行,怎么改
[此贴子已经被作者于2019/1/13 15:51:57编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:670 积分:7958 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2019/1/13 17:26:00 [显示全部帖子]

帮忙写一下具体代码,判断列名,好像没有效果


 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:670 积分:7958 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2019/1/14 16:07:00 [显示全部帖子]

 技术请教,很多表都有这个“项目名称”列
想在全局表中实现,怎么弄
判断表中有“项目名称”列,就运行MouseEnterCell,下面是代码:
If e.Col.Name = "项目名称" AndAlso e.Row.IsNull("项目名称") = False Then     '显示所有内容
    e.Table.ShowToolTip(e.Row("项目名称"),e.Row,e.Col)
End If 


以下代码无效,求大神修改       全局表MouseEnterCell
If e.table.cols.contains("项目名称") then
If e.Col.Name = "项目名称" AndAlso e.Row.IsNull("项目名称") = False Then     '显示所有内容
    e.Table.ShowToolTip(e.Row("项目名称"),e.Row,e.Col)
End If
End If 

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:670 积分:7958 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2019/1/18 15:09:00 [显示全部帖子]

‘同步数据,以下代码无效    SQL表    没有绑定表名
    If Result = DialogResult.Yes Then
        '复制数据到在建项目
        Dim cmd As New SQLCommand
        Dim nm As String  = r("立项编号")
        Dim dt As DataTable
        Dim Cols1() As String = {"项目名称","立项编号","简码","资质","区域"}  '原数据
        Dim Cols2() As String = {"项目名称","立项编号","简码","资质","区域"}  '目标数据
        cmd.C
        cmd.CommandText = "SELE CT * From {JY_投标立项} Where 立项编号 = '" & nm & "'"
        If cmd.ExecuteScalar > 0 Then
            Messagebox.Show("已经存在相同项目名称","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
            Exit Function
        End If
        dt = cmd.ExecuteReader()
        For Each dr1 As DataRow In dt.DataRows
            Dim dr2 As DataRow = DataTables("XM_在建项目").AddNew()
            For i As Integer = 0 To Cols1.Length -1
                dr2(Cols2(i)) = dr1(Cols1(i))
            Next
        Next
        r("中标") = True
        r.Save
        s.Dmessage("提示", "操作 【中标项目登记成功】!",getimage("Tools_正确.png"),5,"")
    End If
[此贴子已经被作者于2019/1/18 15:10:38编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:670 积分:7958 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2019/1/22 19:34:00 [显示全部帖子]

Dim cmd As New SQLCommand
Dim dt As DataTable
cm d.connec tion Name = "主数据源"
cmd.CommandText = "S ELECT * From {XM_在建项目}"
dt = cmd.ExecuteReader()
DataTables("XM_在建项目").LoadFilter = ""

说是不存在这个表,求解
[此贴子已经被作者于2019/1/22 19:35:43编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:670 积分:7958 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2019/2/23 9:53:00 [显示全部帖子]

Dim rt As prt.RenderText '定义一个文本对象
Dim tm As String  = ProjectPath & "Attachments\工程内部协议基本情况表.docx" '指定模板文件
Dim fl As String = ProjectPath & "Reports\工程内部协议基本情况表.docx" '指定目标文件
Dim wrt As New WordReport(Tables("内部合同"),tm,fl) '定义一个WordReport

'设置水印
rt = New prt.RenderText '设置文本对象的内容
rt.Text = Tables("内部合同").Current("项目名称") '设置文本内容
rt.Width = "Parent.Width" '宽度等于页面宽度
rt.Height = "Parent.Height" '高度等于页面高度
rt.Style.TextAngle = 45 '旋转45度
rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中对齐
rt.Style.TextAlignVert = prt.AlignVertEnum.Center '垂直居中对齐
rt.Style.FontSize = 72 '字体大小为8磅
rt.Style.TextColor = Color.Gray '文本颜色为灰色
wrt.WaterMark = rt '作为水印使用        ‘这行代码无效,帮忙看看

wrt.Build() '逐行生成报表
wrt.Show() '显示报表

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:670 积分:7958 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2019/2/23 10:46:00 [显示全部帖子]

Dim rt As prt.RenderText '定义一个文本对象
Dim tm As String  = ProjectPath & "Attachments\工程内部协议基本情况表.docx" '指定模板文件
Dim fl As String = ProjectPath & "Reports\工程内部协议基本情况表.docx" '指定目标文件

'设置水印
Dim app As New MSWord.Application
try
    Dim doc = app.Documents.Open(tm)
    With doc
        .Activate
        app.WordBasic.RemoveWatermark  '删除旧的水印
        For Each oSec As object In doc.Sections    '文档的节中循环
            Dim myRange = oSec.Headers(MSWord.WdHeaderFooterIndex.wdHeaderFooterPrimary).Range
            myRange.Delete    '删除页眉中的内容
        Next
        .Sections(1).Range.Select
        app.ActiveWindow.ActivePane.View.SeekView = MSWord.WdSeekView.wdSeekCurrentPageHeader '插入水印前需更改视图样式为页眉视图
        Dim i As Integer
        Dim nr As String = Tables("内部合同").Current("项目名称") & vbcrlf & Date.Now
        For i = 1 To 1      '水印数量
            '设置插入水印,语法:表达式.AddTextEffect(预设文字效果, 文字内容, 字体名, 字体大小, 是否粗体, 是否斜体, 左侧位置, 顶部位置)
            app.Selection.HeaderFooter.Shapes.AddTextEffect(10, nr,"宋体", 25, False, False, 100,i*200).Select         '水印如何居中
        Next
        app.ActiveWindow.ActivePane.View.SeekView = MSWord.WdSeekView.wdSeekMainDocument '恢复视图样式到原来样式
    End With
    doc.save
    app.quit
catch ex As exception
    app.quit
End try

'打开报表
Dim wrt As New WordReport(Tables("内部合同"),tm,fl) '定义一个WordReport
wrt.Build() '逐行生成报表
wrt.Show() '显示报表



老师帮忙看看新问题
1.页眉中加内容        =Tables("内部合同").Current("项目名称")
2.水印如何上下左右居中

是不是用 app.AlignHorzEnum.Center 
[此贴子已经被作者于2019/2/23 10:48:32编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:670 积分:7958 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2019/8/22 13:15:00 [显示全部帖子]

        For Each r As Row In Tables(eForm.name & "_table2").GetCheckedRows
            i=i+1
            If tz="" Then
                tz=cstr(r("用户帐号"))
                tzxm = cstr(r("用户帐号") & r("真实姓名"))
            Else
                tz=tz & "|" & cstr(r("用户帐号"))
                tzxm = cstr(r("用户帐号") & "|" & r("真实姓名"))
            End If
        Next

            Dim jo As New JObject
            jo("title") = sy   '通知标题
            jo("description") = s '通知内容
            'jo("Description") = ""   '图片
            jo("url") = Http_Server & "mobile/html/cgdd_info.html?_identify=" & r("_identify").Tostring '通知点开的连接
            Dim tzry As String = tz  '通知人员名单
            Dim rel As String = Functions.Execute("Http_SendMsg",tzry,jo.ToString,"SendCard") '发送通知
以上代码,可以发送单个人


Dim tzry As String = “001”     这样可以发送
Dim tzry As String = “001|002”     这样就不行,请解

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:670 积分:7958 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2019/8/22 14:12:00 [显示全部帖子]

            Dim tzry As String = tz  '通知人员名单
            Dim rel As String = Functions.Execute("Http_SendMsg",tzry,jo.ToString,"SendCard") '发送通知

上面tz的值是一个  比如“001”   下面的发送通知代码有效
如果tz的值是一个  比如“001|002”   下面的发送通知代码就出错了

001    002   为用户账号

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:670 积分:7958 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2019/8/22 14:41:00 [显示全部帖子]

Dim tzry As String = tz  '通知人员名单      
是调用接口的,他们回复,
tz的值等于“001|002” ,要分成两个“001” , ”002“   才能发送 ,我用上面的代码合成,多了个“|”号,所以不行了
tz的值等于“001”或“002”单个值,就能发送


可能要用到    但我测试失败了

分割字符可以是一个数组,例如:

Dim Value As String = "foxtable|access/foxpro|excel/egrid"
Dim
sps() As Char = {"|","/"}
Dim
Names() As String  = Value.Split(sps)
For
Each name As String In Names
   
Output.Show(Name)
Next

[此贴子已经被作者于2019/8/22 14:42:59编辑过]

 回到顶部
总数 12 1 2 下一页