Synergex
 
  Synergy-e-News
 
  News and updates for Synergy/DE Developers :: September 16, 2010
 
 
 
SPC 2010 is two weeks away!

SPC 2010

Learn more and register today
UPCOMING CLASSES


11/08 - 11/12/2010
Synergy Language Essentials

11/15 - 11/19/2010
Synergy/DE UI Toolkit Essentials

View all


LATEST BLOG POSTS

William Mooney: Burned again!

Richard Morris: Mr Numpty’s hair stood on end. It must be the static!
 
IN THIS ISSUE
 
It’s Easy to Give Your Synergy/DE-based Application a Modern UI
Without extensive modification of your application’s logic and data—no matter what platform you are on

Ready for the Rush
How a company’s proactive practices paid off big

Synergy/DE Tech Tip
Error returned when building the SQL Connection server shared library for Oracle 10g on Solaris

Quiz
Synergy/DE pros, see if you can answer this question!

Platform News
Read a selection of recent articles
 
 
 

It’s Easy to Give Your Synergy/DE-based Application a Modern UI
Without extensive modification of your application’s logic and data—no matter what platform you are on

Attend the SPC next month and see how a Synergy/DE customer took their cell-based application

Kaman application

[ view larger image ]


At the SPC, Synergy/DE customer Kaman Industrial Technologies, Inc., will demonstrate how they gave their cell-based application a modern UI – complete with screens for customer profiles, backorders, customer sales history, and search. This customer recently completed a pilot project in which programmers completely new to Synergy/DE gave Kaman’s cell-based Synergy application a new Windows UI that uses Windows Forms and WPF. In this session, Kaman will demonstrate their updated application and also describe how they used object-oriented design and techniques during the project.

This is just one of the sessions at the conference that will illustrate how you can advance your Synergy/DE-based application by adding new functionality and modernizing the UI—regardless of the platform you’re on.

For a complete list of SPC sessions, check out the conference agenda.

Visit spc.synergex.com for more information and to register.


Ready for the Rush

How A Company’s Proactive Practices Paid Off Big

CareCentric’s development team decided a couple of years ago that it was in the firm’s best interests to be proactive about migrating its Synergy/DE-based applications to version 9. They wanted their installed base of over 12,000 end users to be able to migrate to Windows Vista or Server 2008 (and now Windows 7) on their schedule instead of having to conform to CareCentric’s. At the time, CareCentric was on Synergy/DE versions 7 and 8 so migrating to version 9 was in order.

With applications running on OpenVMS, SCO Unix, IBM AIX, and Windows, CareCentric began the migration effort with OpenVMS, compiling its entire five-million-plus source code library, and sifting through the compiler errors that resulted. “There were quite a few errors,” states CareCentric’s senior technical advisor David Juliette, “but the overwhelming majority of them were the kinds of things that were either questionable or downright bad coding practice, which the old compiler let slide, but the new compiler blew the whistle on and called a foul—the invalid use of subroutine arguments (alpha instead of numeric, and vice versa), commons overlaying records (and vice versa), absurdly defined decimal fields (like d170), non-numeric variables as subscripts, statements on the same line as a BEGIN, and things of this general nature.” And, while the sheer number of these errors was quite large, the solutions to all of them were fairly straightforward—especially considering the application had been worked on by upwards of 50 programmers in its 30-year history.

Once the OpenVMS phase of the project was complete, CareCentric moved to the SCO Unix (and AIX) phase. There, developers found that the overwhelming majority of the problems had been mitigated in the OpenVMS phase, and that compiling the application on Unix yielded few errors. Once they had completed the Unix and then the Windows phases of the migration, they began rolling out the new Synergy/DE 9-based version of their application to customers, enabling them to upgrade to version 9 whenever they started acquiring Vista PCs and Server 2008 (and now Windows 7) in their configurations.

CareCentric is very pleased that it made this move two years ago, before any of its customers had requested the platform upgrade. States Juliette, “If you have a customer base of any significant size, it only makes sense to be ready for the day when your customers inevitably want to upgrade to Windows Vista, Server 2008, or Windows 7. I believe very firmly that our decision to immediately bring our products into version 9 compliance saved us a tremendous amount of potential pain and suffering, both on our part as well as on the part of our customers. I cannot imagine accomplishing the changes that were necessary to our code under the duress of having to work under a customer’s demanding schedule instead of our own.”

Being a software vendor itself, CareCentric also has an appreciation for the importance of running the latest version of software. Says Juliette, “I know from personal experience that it’s always much easier to find a solution to a problem that a customer may be experiencing with one of our own products if the customer is running a reasonably current version.” As an aside, he mentioned, “I must add that every problem I encountered in the version 9 transition was resolved promptly by the Synergy/DE developer support team, who has always provided us with first-rate service for as long as I’ve been calling on them.”

In addition to the new platform support, there are several features in version 9 that are beneficial to CareCentric and its users—for one, the inclusion of a scroll bar in the debugger window. “It’s nothing short of a godsend,” raves Juliette. “I can’t tell you how many times information that I needed during a debug session had scrolled off the top of the window in previous versions with no way to retrieve it. If Synergex had changed nothing else in version 9, I would have been thrilled with that one change alone.”

About CareCentric
CareCentric serves the home health continuum by providing complete business solutions that include software tools and billing and IT services. Their MestaMed® billing system and PharMed® pharmacy system are powered by Synergy/DE.


Synergy/DE Tech Tip
Error returned when building the SQL Connection server shared library for Oracle 10g on Solaris

Question
When I try to build the SQL Connection server shared library for Oracle 10g on Solaris (with 64-bit Synergy/DE), the makessqlsrv command returns the following error. What could cause this?

HOST=VTX0.so
LIB=../lib
DBHOME=/orainst/oracle/product/10.2.0
HLCL=../lib/tdb0_9.o
XLIB=../lib/tb2.a
XLIB2=../lib/tdb2.a
RDBMSLIB=/orainst/oracle/product/10.2.0/rdbms/lib
DBLIB=-L/orainst/oracle/product/10.2.0/lib -lclntsh
VOLPTS=
+ [ xxcc = xx ]
+ cc -xtarget=generic64 -G -zdefs -lc -lm -o VTX0.so ../lib/tdb0_9.o ../lib/tb2.
a -L/orainst/oracle/product/10.2.0/lib -lclntsh ../lib/tdb2.a -lm -lnsl -lsocket
-ldl
cc: Warning: illegal option -xtarget=generic64
ld: fatal: file ../lib/tdb0_9.o: wrong ELF class: ELFCLASS64
ld: fatal: File processing errors. No output written to VTX0.so
+ strip VTX0.so
strip: VTX0.so: cannot open file.
No such file or directory


Answer

The following part of the error message indicates that the Sun Studio C compiler for 64-bit is not installed on the system.

cc: Warning: illegal option -xtarget=generic64
ld: fatal: file ../lib/tdb0_9.o: wrong ELF class: ELFCLASS64
ld: fatal: File processing errors. No output written to VTX0.so

The native C compiler has limited functionality and does not work for this. You must install the Sun Studio C compiler.

Note that although this was reported in Synergy/DE 8.3.1b, it applies to all versions of Synergy/DE.

This Tech Tip is also an article in the Synergy/DE KnowledgeBase*. KB is a searchable, fully indexed technical library where you can research a multitude of answers to previously asked support questions.

*You must have Synergy/DE Developer Support in order to access the Synergy/DE KnowledgeBase. If you do not have Developer Support, contact your Synergy/DE account manager.



Quiz
Synergy/DE pros, see if you can answer this question!

What is the output of the following program?

import System.Collections

namespace pulling
  class strings
    private m_array, @ArrayList
    public method strings
    proc
      m_array = new ArrayList()
    end
    public method influence, @strings
    in req val, string
    proc
      m_array.add(val)
      mreturn this
    end
    public method serialize, string
    record
      rval, string
      str, string
    proc
      rval = "["
      foreach str in m_array
        rval = rval + "'" + str + "',"
      if (rval.Length > 1)
        rval = rval(1:rval.Length-1)
      rval = rval + ']'
      mreturn rval
    end
    public override method ToString, string
    record
      rval, string
      str, string
    proc
        rval = ""
      foreach str in m_array
        rval = rval + char(10) + str
      mreturn rval
    end
    public static method op_Explicit, string
    in req target, @strings
    proc
      mreturn target.ToString()
    end
  endclass
endnamespace

main
record
      lobbyist, @pulling.strings
proc
      open(1,o,"TT:")
      lobbyist = new pulling.strings()
      lobbyist.influence("congress").influence("president")
      writes(1,lobbyist)
end


a. A compilation error
b. A runtime error
c. ['congress','president']
d. congress
    president

Click here for the answer and explanation.




Platform News
Read a selection of recent articles
Windows OpenVMS Linux