Forum Replies Created
-
AuthorReplies
-
Thank you for the information regarding the keystroke utility.
Advansys Support
Thank you for the information above.
Advansys Support
You mentioned this problem only occurs on some W2K machines, so I assume it works OK on others?
Was there something different in the environment when you installed on the machines that worked, as opposed to the machines that did not? For example, were you logged in as the end-user when installing Runtime? You may wish to try installing again, ensuring you are logged in as the same user as will ultimately be using runtime.
Pleaes let me know how you prceed.
(I have removed you email address from your posting so it is not picked up by spam robots)
August 19, 2003 at 11:39 pm in reply to: Will “Publish folder list to Word” work with Word 97? #8571Engineering would like to confirm which applet you are using (the output quoted above doesn’t match that produced by the shipping applet).
Could you please email a copy of the applet in question to support@advansyscorp.com.
Regards,
Advansys Support
This version has been tested with Word 97 SR1 and SR2, Word 98 and Word 2000. Which version of Word 97 are you using?
I’ve forwarded your question to engineering for a response. I’ll let you know what they advise ASAP.
Advansys Support
Formativ uses the COM date format internally, which is local/format independent. Certain VBS date functions use the date locale settings. Could you please provide a specific example of what you are trying to do, and we should be able to assist further.
Advansys Support
August 14, 2003 at 4:45 pm in reply to: Applet lost… I’m wondering if formativ is ready to use? #5450I don’t know why this would happen. As long as you don’t shut GroupWise dowm, you should be able to locate the applet source via File Explorer in either your local applets directory, or in the mirror cache directory stucture (all applets are local during a session, even those in eDirectory). Determine the location of your cache (mirror) directory from the About dialog, then check the sub-directories under that directory. You should also check the Windows trash can.
We are sorry you lost your work. We will revisit the cut/paste applet code as part of our next review.
Advansys Support
Kate,
You need to use the .ItemByName method to access each variable in a HTML form, so if that’s what you mean by ‘dim’ each one, then yes.
Please let us know if you need any other assistance.
Advansys Support
The FormVariables object only returns the values from Formativ Portals – not HTML dialogs. I think there may be an error in the documentation in this regard.
You need to use the aDlg.Variables object, which is very similiar to the FormVariables object. We have updated your code to show how this works.
Advansys Support
Sub Main(Client, GWEvent) Dim aDlg dim iHtmlCtl dim iLastName Set aDlg = Utilities.NewHTMLDialog aDlg.Caption = "New Account Request Form" aDlg.HTMLCode = Utilities.LoadStringFromFile(Utilities.GetDataDirectory & "test.htm") aDlg.Execute ' Returns variables and its values set by HTML form controls in the dialog set iHtmlCtl = aDlg.Variables.ItemByName("txtLastName") if not iHtmlCtl is nothing then iLastName = iHtmlCtl.Value end if Dim Msg GroupWise.NewMail Set Msg = GroupWise.ComposingItem if Msg is Nothing then MsgBox("No composing item available") else Msg.BodyText = iLastName Set Msg = nothing end if End SubWhat version of Formativ are you using?
Advansys Support
There are two techniques you can use to access address book information.
1) The standard GroupWise.Account object, which provides lower-level, complete, yet more difficult to use access, or
2) the GroupWise.AddressBooks object, which provides higher-level, yet simpler access.
The technique you use will ultimately depend on the problem you are trying to solve.
Option 1) uses the native GroupWise Object API to reference the address book. You need to use the FieldDef approach shown in the example to access field data.
Option 2) wraps the Object API in a simple object model. Only basic fields are exposed by hard coded property name (such as FirstName). The names of the properties were chosen as simple representations of the names. The reference fields were not encapsulated, as they were not considered to be widely used. Using this technique you are still able to access the reference fields, or any other fields supported by the address book via the AddressBookEntry.Object property. This gives you access to the native Object API AddressBookEntry object. Likewise, the wrapped AddressBook object also exposes an Object property. Using the .Object properties, you are able to access any Field in a book using a variation on the technique shown in the example above.
There are several examples of address book access available from AppletCentral on CoolSolutions. There are also a couple of examples in the examples pack you can download from our web site.
I hope this helps.
Advansys Support
The fields available in a given address book vary between book to book. You need to query the field definitions contained in an address book to obtain a list of possible fields. The applet shown below creates a text file containing the field definition details for a given address book.
Regarding your second question, while I haven’t tried, I would suspect the “Last reference” and “reference Count” fields should be accessible in the same way as all the other fields (they appear as standard fields in the output of the applet shown below). What kind of problem have you experienced?
Advansys Support
'------------------------------------------------------------------------------- ' Formativ Solutions for GroupWise ' Address Book Field Definitions ' Copyright (c) 2003 Advansys Pty Limited (www.advansyscorp.com) ' Version 1.0 ' ' DESCRIPTION: ' Fields definitions from the selected address book are saved to a text file. ' ' ' Display Format : Name, Field type*, Field ID, Hidden*, Read only* ' * Field Type : 1 - String, 2 - Numeric, 3 - Date, 4 - Binary, 5 - Reserved ' * Hidden : Boolean. TRUE if the field is hidden. ' * Read Only : Boolean. TRUE if the field is read-only ' '------------------------------------------------------------------------------- IDS_SEPARATOR = Chr(9) const IDS_CAPTION = "Formativ Business Solutions" const MAX_PAD = 50 '------------------------------------------------------------------------------- ' Main-Line Processing '------------------------------------------------------------------------------- Sub Main(Client, GWEvent) dim x dim iField dim iFieldDefs dim iFieldsList dim iAddressBook dim iAddressBookName on error resume next if not PrepareAddressBookDlg(iAddressBookName) then exit sub end if set iAddressBook = GroupWise.AddressBooks.item(iAddressBookName).object if not isobject(iAddressBook) then exit sub end if set iFieldsList = utilities.stringlist set iFieldDefs = iAddressBook.FieldDefinitions iFieldsList.add("Address book: " & iAddressBook.name) iFieldsList.add("Field Definitions: " & iFieldDefs.count) iFieldsList.add("Key: Name, Field type, Field ID, Hidden, Read only") iFieldsList.add("Field type: 1 - String, 2 - Numeric, 3 - Date, 4 - Binary, 5 - Reserved") iFieldsList.add("") iFieldsList.add("-----------------------------------------------------------------------") for x = 1 to iFieldDefs.count set iField = iFieldDefs.item(x) iFieldsList.add(FieldPad(iField.name) & IDS_SEPARATOR & iField.FieldType & IDS_SEPARATOR &_ iField.FieldID & IDS_SEPARATOR & iField.Hidden & IDS_SEPARATOR & iField.ReadOnly) next dim iFilePath iFilePath = Utilities.GetDataDirectory & "ADV_FieldDefs.txt" iFieldsList.SaveToFile(iFilePath) call msgbox("Field Definitions have been saved. The text file will now be opened." & vbcrlf & iFilePath, vbInformation, IDS_CAPTION) Utilities.OpenDocument(iFilePath) set iFieldDefs = nothing set iFieldsList = nothing set iAddressBook = nothing End Sub function FieldPad(aValue) FieldPad = aValue x = len(FieldPad) if x < MAX_PAD then FieldPad = FieldPad & string(MAX_PAD - x," ") end if end function ' Prepare the address book dialog function PrepareAddressBookDlg(aBookName) dim iDlg dim iBook dim iBookCtl PrepareAddressBookDlg = FALSE set iDlg = Utilities.NewControlBoxDialog with iDlg .Height = 330 .Caption = IDS_CAPTION .Title = "Address Book Field Definitions" .Description = vbCrLf & "To extract the field definitions, select the appropriate address book from the list below" end with ' Address books set iBookCtl = iDlg.AddComboBoxControl with iBookCtl .Caption = "Select an address book" for Each iBook in GroupWise.AddressBooks .Items.Add(iBook.Name) next .Sorted = TRUE .ItemIndex = 0 end with if (iDlg.execute = btn2) then exit function end if aBookName = iBookCtl.Text if (len(aBookName) > 0) then PrepareAddressBookDlg = TRUE end if set iDlg = nothing set iBookCtl = nothing end functionThank you for the update. Unfortunately we have not been able to reproduce this problem in-house.
To assist further could you please send the following files to support@advansyscorp.com:
ADV_JunkMailList.txt
ADV_JunkSubjectList.txt
ADV_JunkContentList.txtYou will find these files in the Formativ data directory. To determine the location of your Formativ data directory, check the configuration tab of the Formativ About dialog (you can display the about dialog via the main GroupWise menu Help | About Formativ).
Regards,
Advansys Support
Unfortunately, Formativ cannot currently send keystrokes to other processes. The shell method will not do this either. You may need to investigate utilities that wait for a given application to start, then send the appropriate keystrokes. Not having worked with a specific application, I am unable to recommend a particular utility.
Advansys Support
The easiest way to view the details of the blocked addresses and phrases is to view the GroupWise rules the applet builts. In GroupWise, select Tools|Rules. The rules created by the applet should be obvious. Edit them to see the data they block.
If you have difficulty, let me know and I’ll tell you how to access the data files the rules are based on.
Advansys Support
-
AuthorReplies