Ett dynamiskt moln i dina Notesapplikationer
Jag har ju
tidigare gjort ett moln för visning på
webben. Här nedan har jag gjort ett för Notesklienten också.
Gör sä här
- Skapa en Lotusscript agent och klistra in nedan kod.
- Hitta en kategoriserad vy i din databas och skriv in den i scriptet på rad7.
- Skapa ett formulär med namnet "Cloud" och i det ett Richtext fält med namn "Body".
- Tillval : Gör en knapp eller Outline för användarna ch trigga agenten med ToolsRunMacro.
Jag gjorde detta för en kund nyligen i ett CRM system, där man med ett moln snabbt kan se vilka företag som har flest aktiviteter, blev riktigt snyggt.
Scriptet skapar ett temporärt dokument som enbart används för visning i en dialogruta, när dokumentet stängs tas det bort. dvs varje gång man triggar agenten får man aktuella värden.
Observera att scriptet bara presenterar ett moln, man kan inte klicka på taggarna.
Sub Initialize
Dim entry As notesviewentry, nav As notesviewnavigator,view As notesview
Dim db As notesdatabase,diff As Integer,max As Integer
Dim min As Integer,doc As notesdocument, pub As Integer
Dim session As New notessession,ws As New notesuiworkspace
Dim rt As notesrichtextitem,richstyle As NotesRichTextStyle
Set db = session.currentdatabase
Set view = db.getview("EnVykategoriseradiförstakolumnen")
Set nav = view.CreateViewNav
wdb = Evaluate(|@WebDbName|)
Set entry = nav.GetFirst
Do Until entry Is Nothing
If entry.ChildCount > max Then max = entry.childcount
Set entry = nav.GetNextCategory(entry)
Loop
min = 1
diff = max - min
pub = diff / 3
Set richstyle = session.CreateRichTextStyle
Set doc = db.createdocument
doc.Form = "Cloud"
Set rt = doc.CreateRichTextItem("Body")
Set entry = nav.GetFirst
Do Until entry Is Nothing
Select Case entry.childcount
Case min :
richStyle.FontSize = 10
Case max :
richStyle.FontSize = 40
Case Is > min + (pub *2)
richStyle.FontSize = 20
Case Is > min + (pub)
richStyle.FontSize = 30
Case Else
richStyle.FontSize = 13
End Select
Call rt.AppendStyle(richStyle)
Call rt.AppendText(entry.ColumnValues(0) + " ")
Set entry = nav.GetNextCategory(entry)
Loop
Call doc.Save(False,False)
Call ws.DialogBox("Cloud",True,True,False,True,True,True, |
"Ett moln av aktiviteter - Störst text har flest aktiviteter|,doc)
Call doc.Remove(True)
End Sub
Relevanta Poster på Notessidan: