Forum Replies Created

Viewing 15 replies - 661 through 675 (of 712 total)
  • Author
    Replies
  • in reply to: Beta expired #8275
    Support 1
    Participant

      Advansys has posted a free Formativ Express 1.6 installer update to our Web site, which is now available for download here. This release replaces a Beta version which expired on December 30, 2003. The update does not have an expiry date.

      If your version of Formativ Express has expired, to use the latest release version, please uninstall the existing version of Formativ, download and run the new Formativ Express installer (formativexpress.exe).

      Please do not hesitate to contact us if you have any questions or problems.

      Advansys Support

      in reply to: Create Find Results Folder #6854
      Support 1
      Participant

        Thank you for your question. Below is a code sample to creates a search results folder that I think matches your requirement.

        '------------------------------------------------------------------------
        Const FOLDER_NAME_QUERY = "Unopened Items"
         
        Sub Main(Client, GWEvent)
         
          dim oQuery
          dim oFolder
         
          call GroupWise.Account.Refresh
         
          On Error Resume Next
        
          set oFolder = GroupWise.Account.RootFolder.Folders.ItemByName(FOLDER_NAME_QUERY)
         
          ' Exit, if the folder is exists
          if IsObject(oFolder) Then
            MsgBox ("The folder '" & FOLDER_NAME_QUERY & "' already exists in your Cabinet. " &_
            "If required, you can rename the existing search folder and run this applet again.")
            exit sub
          end if
         
          ' Creates a new Query object
          set oQuery = GroupWise.Account.CreateQuery
         
          ' Set up a Filter expression.
          oQuery.Expression = "(MAIL) AND (NOT OPENED) AND (BOX_TYPE = INCOMING)"
        
          call oQuery.Locations.Add(GroupWise.Account.Mailbox)
        
          ' Run the query whenever the folder is selected.
          oQuery.StartOnOpen = true
        
          call oQuery.CreateFolder(FOLDER_NAME_QUERY, GroupWise.Account.RootFolder)
          call GroupWise.Account.Refresh
         
          call MsgBox ("The folder '" & FOLDER_NAME_QUERY & "' was created under the root folder.")
         
          set oQuery = Nothing
          set oFolder = Nothing
         
        End Sub
        '------------------------------------------------------------------------

        I hope this helps.

        Advansys Support

        in reply to: email message toolbar #6818
        Support 1
        Participant

          I gather you refer to GroupWise 6.5, which has a Send button on the message view toolbar. Unlike earlier versions, there is no longer a column of Action buttons (including Send) on the right-hand side.

          It is not possible to automate the removal/addition of toolbar buttons on this GroupWise View, whether using Formativ or some other GroupWise C3PO (Custom 3rd Party Object). This is because GroupWise does not expose APIs to do so.

          Advansys Support

          in reply to: Filtering Task List #6809
          Support 1
          Participant

            We do not have a sample of JavaScript that improves on sort.htc.

            Another way to do this is to sort the tasks in the applet VBScript, rather than using dynamic HTML. You could use a StringList, which has a .Sorted property. In this case, add task data to the .Strings and .Objects properties as follows:

            Sort by        | String               | Object
            -------------------------------------------------
            Prio           | .Priority            | .Subject
            Subject        | .Subject             | .Priority
            Prio & Subject | .Priority + .Subject |

            Once the StringList is filled, simply use it as your source data for the HTML table.

            This approach is less interactive than DHTML; it requires re-executing the applet to see the tasks sorted in a different order.

            Advansys Support

            in reply to: Filtering Task List #6806
            Support 1
            Participant

              The following version of your Portal code takes advantage of a DHTML component that you can download from here. To work with this applet, copy the file into your common Application Data folder, eg. C:Documents and SettingsAll UsersApplication Data.

              For more information about this, see the article Fun with Tables.

              I have used the _ operator to shorten source code lines in the VBScript code, to make it more readable.

              In the HTML table, I have added tags

              <thead>

              ,

              <tbody>

              and replaced the tag

              <th>

              by

              <td>

              in order to make the DHTML Behavior work.

              Notice the Portal property .HTML is no longer used; .URL is used instead. I have done this to make the DHTML Behavior work correctly. You could still use the .HTML property, which requires embedding the JavaScript in the DHTML component into your source HTML – therefore also into your applet source code.

              '-------------------------------------------------------------------------------
              Const LINK_START  = "<A HREF="
              Const UID_MARKER  = "UID:"
              Const TABLE_END   = "</table>"
              Const FONT_STYLE  = "<FONT STYLE=""TEXT-DECORATION:NONE;FONT-FAMILY:ARIAL;COLOR:RED;FONT-SIZE=8PT"">"
              Const FONT_END    = "</FONT>"
              
              Sub Main(Client, GWEvent)
              
                Dim iTABLE_BEGIN
                Dim iHRT
                Dim iMsg
                Dim iPortal
                Dim iPortals
                Dim iHTML
                dim iFilter
                dim iFileName
                dim oFileSystem
                dim oMessage
                dim oMessages
              
                iHRT = Chr(13) & Chr(10)
              
                Set iPortals = GroupWise.PortalManager.Portals
                Set iPortal = iPortals.Item("TaskManager")
              
                if iPortal is nothing then
                   Set iPortal = iPortals.add
                   iPortal.ID = "TaskManager"
                   iPortal.OpenMessages = TRUE
                   iPortal.NavigationControlsEnabled = FALSE
                end if
              
                iTABLE_BEGIN = "<table style=""behavior:url(sort.htc);"" border=""1"" cellpadding=""0"" cellspacing=""1"">"
                iHTML = iTABLE_BEGIN & "<thead><tr><td>Prio</td><td align=""left"">Subject</td></tr></thead>"
                iHTML = iHTML & iHRT & "<tbody>"
              
                   iFilter = "(TASK AND NOT COMPLETED)"
              
                   set oMessages = groupwise.account.calendar.messages.find(iFilter)
              
                   for each oMessage in oMessages
                      iHTML = iHTML & iHRT & "<tr><td align=""center"">" & _
                        FONT_STYLE & oMessage.TaskPriority & FONT_END & "</td><td>" & _
                        FONT_STYLE & " " & "<A HREF=UID:" & oMessage.MessageID & _
                        " STYLE=""TEXT-DECORATION:NONE"">" & oMessage.Subject & "</A>" & _
                        FONT_END & "</td></tr>"
                   next
              
                   set oMessages = nothing
              
                iHTML = iHTML & "</tbody>" & TABLE_END
                iHTML = "<HTML><BODY>" & iHTML & "</BODY></HTML>"
              
                set oFileSystem = Utilities.FileSystem
                call oFileSystem.CopyFile(oFileSystem.PathCommonAppData & "sort.htc", _
                  Utilities.TempFiles & "sort.htc", true)
                set oFileSystem = nothing
              
                iFileName = Utilities.TempFiles & "sort.htm"
                call Utilities.SaveStringToFile(iHTML, iFileName, true)
                iPortal.URL = iFileName
                iPortal.Show
                iPortals.ActivePortal = iPortal.ID
              
              End Sub

              You can modify the JavaScript in the DHTML component to suit your needs, eg. sort by more than one table column.

              I hope this helps.

              Advansys Support

              in reply to: Filtering Task List #6812
              Support 1
              Participant

                To access the subjects of messages via the GroupWise Object API, use something like the following code sample:

                Sub Main(Client, GWEvent)
                
                  dim iFilter
                  dim oMessage
                  dim oMessages
                
                  iFilter = "(TASK AND NOT COMPLETED)"
                
                  set oMessages = Groupwise.Account.Calendar.Messages.Find(iFilter)
                
                  msgbox oMessages.Count
                
                  ' The two following FOR statements are equivalent.
                  for i = 1 to oMessages.Count
                    msgbox oMessages.Item(i).Subject
                  next
                
                  'for each oMessage in oMessages
                  '  msgbox oMessage.Subject
                  'next
                
                  set oMessage = nothing 
                  set oMessages = nothing 
                
                End Sub

                On choosing an appropriate user interface, note the significant difference between the HTML dialog and HTML portal. The dialog is modal while the portal is modeless. Be sure to read through the Formativ Programmer’s Guide, on the Portal Manager and/or HTML Dialogs. I suggest you study some example applets that use the Formativ Portal, and that generate HTML to be loaded into a Portal. A good one to start with is the Formativ Applet: Print Message. I hope this helps.

                Advansys Support

                in reply to: the Print Email applet and formative runtime 1.6 #5808
                Support 1
                Participant

                  You may wish to look into the Advansys Message Saver Pack. This solution creates a portable copy of your GroupWise message in a disk file. It includes a Viewer that does not require GroupWise to be installed, and prints both plain-text and HTML format messages.

                  Best wishes for the holiday season!

                  Advansys Support

                  in reply to: Remove Right-click menus #6804
                  Support 1
                  Participant

                    Context menu items are not supported by RemoveMenuItem. However, certain commands can be disabled by blocking their associated tokens (if available), as in the following code sample.

                      dim iText
                     
                      iText = "Disable (Document | Check In...) command from GroupWise?"
                      if (msgbox(iText, vbYesNo, "Enable/disable menu item") = vbYes) then
                        ' 106 is the token ID for DocumentCheckInDlg()
                        GroupWise.DisableCommand(106)
                      else
                        call GroupWise.EnableCommand(106)
                      end if

                    We do not know of a way to hide the Documents folder. It may be possible to remove it using the Folder object Delete method, but we do not recommend deleting default GroupWise folders; it might have unpredictable or very nasty results.

                    Advansys Support

                    [This message was edited by Support 3 on December 11, 2003 at 04:11 PM.]

                    in reply to: Filtering Task List #6810
                    Support 1
                    Participant

                      I recommend you look at Examples of Valid Filter Expressions. Unfortunately, Novell’s filter reference Filter Expression Syntax is not very helpful.

                      The filter for all tasks is:

                        iFilter = "(TASK)"

                      The filter for all uncompleted tasks is:

                        iFilter = "(TASK AND NOT COMPLETED)"

                      You can display tasks in one of the following user interfaces:

                      • a Formativ dialog (use a ListBoxControl, TabListBoxControl or StringGridControl);
                      • a HTML dialog, for which you build the HTML dynamically;
                      • a HTML portal, for which you build the HTML dynamically.

                      I hope this helps.

                      Advansys Support

                      [This message was edited by Support 3 on December 11, 2003 at 03:15 PM.]

                      in reply to: Formativ Portals and frames #6798
                      Support 1
                      Participant

                        Glad to be of some help.

                        Advansys Support

                        in reply to: Removemenuitem method #6801
                        Support 1
                        Participant

                          Always happy to help.

                          Advansys Support

                          in reply to: Removemenuitem method #6802
                          Support 1
                          Participant

                            The menu context for RemoveMenuItem changed in GroupWise 6.5.1. We will update the applet on Cool Solutions very soon. In addition, we will update the documentation on RemoveMenuItem in our Formativ Language Guide.

                            Here is some sample code that works with all GroupWise versions.

                              dim iText
                            
                              iText = "Disable (File | New | Document) menu items on the GroupWise client menus?"
                              if (msgbox(iText, vbYesNo, "Enable/disable menu item") = vbYes) then
                                ' GroupWise 6.5.1 or later uses the short menu path.
                                if (GroupWise.EnvVersionName >= "6.5.1")  then
                                  call GroupWise.RemoveMenuItem("GW.CLIENTFileNewDocument")
                                else
                                  call GroupWise.RemoveMenuItem("GW.CLIENT.WINDOW.BROWSERFileNewDocument")
                                end if
                              else
                                call GroupWise.ResetMenuItems
                                call GroupWise.EnableCommand(858) 'AddNewDocument()
                              end if
                             
                              call msgbox("Restart GroupWise to see the changes.")
                            

                            Advansys Support

                            in reply to: Formativ Portals and frames #6799
                            Support 1
                            Participant

                              Use the Document property of the Portal object. This is the same Document object exposed by the Internet Explorer browser to scripting languages like JavaScript and VBScript. The reference for this object model is at HTML and DHTML Reference.

                              As for obtaining the HTML for a specific FRAME, I have not done this. In fact, this is not a Formativ issue, rather it involves programming with the HTML document object model (DOM). I would look at Working with Windows, Frames and Dialog Boxes, especially the frames(i).document property (where i is the index of the relevant frame in the web page frames collection).

                              Advansys Support

                              in reply to: Portal Window display while loading #6797
                              Support 1
                              Participant

                                We have done a lot of research into this behaviour of the Internet Explorer ActiveX control. The error page seems to appear under different circumstances, often when multiple web site portals are being loaded at once. But it does not always appear for the same URL or set of URLs. It is the browser that cancels the page load. We have not found a way to prevent this behaviour.

                                The reason the page eventually loads is that the Formativ Portal captures the canceled load, and reloads the page. This is our workaround/cosmetic fix – imperfect, but better than nothing!

                                We would appreciate it if you could inform us of scenarios that cause this in a repeatable way. We may be able to improve on the existing workaround with the benefit of more data on this behaviour.

                                Advansys Support

                                in reply to: check box disable #6795
                                Support 1
                                Participant

                                  We can send you a sample applet. Please send an email to support@advansyscorp.com so we can post to your email address.

                                  Advansys Support

                                Viewing 15 replies - 661 through 675 (of 712 total)