以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于处方  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=24869)

--  作者:sxdoc
--  发布时间:2012/10/25 10:56:00
--  关于处方
处方打印中如:党参10克,当归10克,茯苓10克,白术10克,干姜6克,甘草3克,如何能排列成三行两列
--  作者:sxdoc
--  发布时间:2012/10/25 10:59:00
--  

看了好久报表的知识,也同样没有头绪,只知道如何将处方中每种药分成一组,总共分成六组

 


--  作者:程兴刚
--  发布时间:2012/10/25 11:00:00
--  

提问时请附带文件,省得浪费精力而不能实际解决问题!


--  作者:sxdoc
--  发布时间:2012/10/25 11:03:00
--  
 

Dim Multi As String = "党参10克,当归10克,茯苓10克,白术10克,干姜6克,甘草3克"
Dim
Values() as String
Values
= Multi.split(",")
For
Index As Integer = 0 To Values.Length - 1
    Output.Show(Values(Index
))
Next

 

党参10克
当归10克
茯苓10克
白术10克
干姜6克
甘草3克

 

能分成两列就可以了


--  作者:狐狸爸爸
--  发布时间:2012/10/25 11:07:00
--  
Dim Multi As String = "党参10克,当归10克,茯苓10克,白术10克,干姜6克,甘草3克"
Dim ss As String
Dim Values() As String
Values = Multi.split(",")
For Index As Integer = 0 To Values.Length - 1
    ss = ss & Values(Index) & ","
    If Index > 0 And Index Mod 2 = 1 Then  
        ss= ss.Trim(",") & vbcrlf
    End If
Next
output.show(ss.trim(","))

--  作者:程兴刚
--  发布时间:2012/10/25 11:18:00
--  
以下是引用sxdoc在2012-10-25 11:03:00的发言:
 

Dim Multi As String = "党参10克,当归10克,茯苓10克,白术10克,干姜6克,甘草3克"
Dim
Values() as String
Values
= Multi.split(",")
For
Index As Integer = 0 To Values.Length - 1
    Output.Show(Values(Index
))
Next

 

党参10克
当归10克
茯苓10克
白术10克
干姜6克
甘草3克

 

能分成两列就可以了

 

那还用写代码?手工就可以了!

 

这样:

 

Dim Multi As String = "党参10克,当归10克,茯苓10克,白术10克,干姜6克,甘草3克"
Dim Values() As String
Values = Multi.split(",")
Dim s,s1 As String
For Index As Integer = 0 To Values.Length - 1
    s = Values(Index)
    If s.Length = 4
        s = s.Insert(2," ")
    End If
    s1 = s1 & s & "   "
     If Index > 0
        If Index Mod 2 = 1
            Output.Show(s1)
            s1 = Nothing
        End If
    End If
Next


--  作者:程兴刚
--  发布时间:2012/10/25 11:20:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:12345.jpg
图片点击可在新窗口打开查看

--  作者:sxdoc
--  发布时间:2012/10/25 12:53:00
--  

 

 

Dim Multi As String = "大叶金钱草50克,潞党参10克,当归10克,茯苓10克,白术10克,干姜6克,甘草3克"
Dim Values() As String
Values = Multi.split(",")
Dim s,s1 As String
For Index As Integer = 0 To Values.Length - 1
    s = Values(Index)
    If s.Length = 4
        s = s.Insert(2," ")
    End If
    s1 = s1 & s & "   "
     If Index > 0
        If Index Mod 2 = 1
            Output.Show(s1)
            s1 = Nothing
        End If
    End If
Next

 

结果如下

大叶金钱草50克   潞党参10克  
当归10克   茯苓10克  
白术10克   干姜 6克  

 

实际需要的结果是(靠左对齐的两列):

大叶金钱草50克      潞党参10克  
当归10克              茯苓10克  
白术10克              干姜 6克

 

 

 


--  作者:sxdoc
--  发布时间:2012/10/25 13:06:00
--  

两列之间插入两个Tba比较理想

 


--  作者:Fotable
--  发布时间:2012/10/25 13:12:00
--  

搞字符串都是不规范的,存储在表里吧