Converting Vplus to .Net - Hewlett Packard

This is a discussion on Converting Vplus to .Net - Hewlett Packard ; Hi All, I have just began working on this project for converting our existing HP3000 Vplus screens to use Fujitsu Cobol on backend and use .Net for the forms. What I plan to do is create routines to emulate the ...

+ Reply to Thread
Results 1 to 10 of 10

Thread: Converting Vplus to .Net

  1. Converting Vplus to .Net

    Hi All,

    I have just began working on this project for converting our existing HP3000 Vplus screens to use Fujitsu Cobol on backend and use .Net for the forms.

    What I plan to do is create routines to emulate the Vplus intrinsics. For example, I have this routine to display the form:

    Private WithEvents _VFormFile As VplusBaseScreen.BaseFormMain

    Public Function VshowForm(ByVal comArea As ComAreaDefinition) As Boolean
    _VFormFile.LoadScreen(_CurrentScreen)
    _VFormFile.Show()
    End Function


    Then, this routine would perform the Vreadfields which basically blocks execution of my application until _KeyEntered = True

    Public Function VreadFields(ByVal comArea As ComAreaDefinition) As Boolean
    _VFormFile.Focus()
    _KeyEntered = False
    Do Until _KeyEntered
    System.Windows.Forms.Application.DoEvents()
    Loop

    End Function

    Then, the form will raise events and set _KeyEntered = True when there is user interaction and the main process will catch those events like this:
    Private Sub _VFormFile_LastKeyPressed(ByVal key As Integer) Handles _VFormFile.LastKeyPressed
    _KeyEntered = True
    RaiseEvent LastKeyPressed(key)
    End Sub
    The above routine just raises the event back to its caller.

    This approach actually works but the Do Loop take 25% of the cpu.

    Now I know this is the HP3000 listserv but I thought I would give it a shotsince some may have tried to accomplish what I am trying to do.

    So, my question is: Is there a better way to accomplish what I'm trying todo? Can/How would I place this on a different thread (if that's a way I should do it).


    Thanks,

    Dave Vorgang
    Senior Programmer / Analyst
    Medford School District - Information Technology
    (541) 842-1021
    mailtoave.Vorgang@Medford.k12.or.usave.Vorgang@Medford.k12.or.us>


    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


  2. Re: Converting Vplus to .Net

    Our student system is homegrown. All done with cobol/vplus/image. I've been assigned the task of wrapping all the vplus intrinsic calls to perform their vb.net equivalence. The idea being that we can simply take our existing cobol apps, run them through a converter to convert them to Fijitsu and then have my vplus routines display the forms.

    Dave Vorgang
    Senior Programmer / Analyst
    Medford School District - Information Technology
    (541) 842-1021
    mailtoave.Vorgang@Medford.k12.or.us


    -----Original Message-----
    From: joseph dolliver [mailto:dolliverj@gmail.com]
    Sent: Tuesday, October 21, 2008 9:08 AM
    To: Dave Vorgang
    Subject: Re: [HP3000-L] Converting Vplus to .Net

    Dave, I am curious what application you are running for K12. Is it
    homegrown or a package?

    Thanks,
    Joe Dolliver

    On 10/21/08, Dave Vorgang wrote:
    > Hi All,
    >
    > I have just began working on this project for converting our existing HP3000
    > Vplus screens to use Fujitsu Cobol on backend and use .Net for the forms.
    >
    > What I plan to do is create routines to emulate the Vplus intrinsics. For
    > example, I have this routine to display the form:
    >
    > Private WithEvents _VFormFile As VplusBaseScreen.BaseFormMain
    >
    > Public Function VshowForm(ByVal comArea As ComAreaDefinition) As Boolean
    > _VFormFile.LoadScreen(_CurrentScreen)
    > _VFormFile.Show()
    > End Function
    >
    >
    > Then, this routine would perform the Vreadfields which basically blocks
    > execution of my application until _KeyEntered = True
    >
    > Public Function VreadFields(ByVal comArea As ComAreaDefinition) As
    > Boolean
    > _VFormFile.Focus()
    > _KeyEntered = False
    > Do Until _KeyEntered
    > System.Windows.Forms.Application.DoEvents()
    > Loop
    >
    > End Function
    >
    > Then, the form will raise events and set _KeyEntered = True when thereis
    > user interaction and the main process will catch those events like this:
    > Private Sub _VFormFile_LastKeyPressed(ByVal key As Integer) Handles
    > _VFormFile.LastKeyPressed
    > _KeyEntered = True
    > RaiseEvent LastKeyPressed(key)
    > End Sub
    > The above routine just raises the event back to its caller.
    >
    > This approach actually works but the Do Loop take 25% of the cpu.
    >
    > Now I know this is the HP3000 listserv but I thought I would give it a shot
    > since some may have tried to accomplish what I am trying to do.
    >
    > So, my question is: Is there a better way to accomplish what I'm trying to
    > do? Can/How would I place this on a different thread (if that's a way I
    > should do it).
    >
    >
    > Thanks,
    >
    > Dave Vorgang
    > Senior Programmer / Analyst
    > Medford School District - Information Technology
    > (541) 842-1021
    > mailtoave.Vorgang@Medford.k12.or.usave.Vorgang@Medford.k12.or.us>
    >
    >
    > * To join/leave the list, search archives, change list settings, *
    > * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
    >


    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


  3. Re: Converting Vplus to .Net

    Dave,
    I have already done this a couple of ways.

    1) If you want to preserve your COBOL then you can create a .Net form and
    package up the data in the exact format the ViewRead would see it. On the HP
    you would have a listener program that would receive the data string. We
    used Minisoft's Middleman to do this.

    The receiving program would be a copy of your original COBOL where the
    string would be considered the return value from the View3000 Read. We used
    this method for several years.

    2) We eventually took one screen at a time and did it completely in .Net.
    Again we used Minisoft for the connection. We did not use SlowDBC. We did
    DBFIND, DBGET, DBUPDATE, DBDELETE directly from the VB or C# code. This is
    very fast and allows all the features of a .Net application with the HP3000
    as a data server.

    Both approaches took a little programming be since I know the HP3000 and its
    languages and I know .Net, it was not too difficult.

    Charlie Cookston
    Web Navigation LLC
    HP3000 contract services

    -----Original Message-----
    From: HP-3000 Systems Discussion [mailto:HP3000-L@RAVEN.UTC.EDU] On Behalf
    Of Dave Vorgang
    Sent: Tuesday, October 21, 2008 12:25 PM
    To: HP3000-L@RAVEN.UTC.EDU
    Subject: Re: [HP3000-L] Converting Vplus to .Net

    Our student system is homegrown. All done with cobol/vplus/image. I've
    been assigned the task of wrapping all the vplus intrinsic calls to perform
    their vb.net equivalence. The idea being that we can simply take our
    existing cobol apps, run them through a converter to convert them to Fijitsu
    and then have my vplus routines display the forms.

    Dave Vorgang
    Senior Programmer / Analyst
    Medford School District - Information Technology
    (541) 842-1021
    mailtoave.Vorgang@Medford.k12.or.us


    -----Original Message-----
    From: joseph dolliver [mailto:dolliverj@gmail.com]
    Sent: Tuesday, October 21, 2008 9:08 AM
    To: Dave Vorgang
    Subject: Re: [HP3000-L] Converting Vplus to .Net

    Dave, I am curious what application you are running for K12. Is it
    homegrown or a package?

    Thanks,
    Joe Dolliver

    On 10/21/08, Dave Vorgang wrote:
    > Hi All,
    >
    > I have just began working on this project for converting our existing

    HP3000
    > Vplus screens to use Fujitsu Cobol on backend and use .Net for the forms.
    >
    > What I plan to do is create routines to emulate the Vplus intrinsics. For
    > example, I have this routine to display the form:
    >
    > Private WithEvents _VFormFile As VplusBaseScreen.BaseFormMain
    >
    > Public Function VshowForm(ByVal comArea As ComAreaDefinition) As

    Boolean
    > _VFormFile.LoadScreen(_CurrentScreen)
    > _VFormFile.Show()
    > End Function
    >
    >
    > Then, this routine would perform the Vreadfields which basically blocks
    > execution of my application until _KeyEntered = True
    >
    > Public Function VreadFields(ByVal comArea As ComAreaDefinition) As
    > Boolean
    > _VFormFile.Focus()
    > _KeyEntered = False
    > Do Until _KeyEntered
    > System.Windows.Forms.Application.DoEvents()
    > Loop
    >
    > End Function
    >
    > Then, the form will raise events and set _KeyEntered = True when there is
    > user interaction and the main process will catch those events like this:
    > Private Sub _VFormFile_LastKeyPressed(ByVal key As Integer) Handles
    > _VFormFile.LastKeyPressed
    > _KeyEntered = True
    > RaiseEvent LastKeyPressed(key)
    > End Sub
    > The above routine just raises the event back to its caller.
    >
    > This approach actually works but the Do Loop take 25% of the cpu.
    >
    > Now I know this is the HP3000 listserv but I thought I would give it a

    shot
    > since some may have tried to accomplish what I am trying to do.
    >
    > So, my question is: Is there a better way to accomplish what I'm trying

    to
    > do? Can/How would I place this on a different thread (if that's a way I
    > should do it).
    >
    >
    > Thanks,
    >
    > Dave Vorgang
    > Senior Programmer / Analyst
    > Medford School District - Information Technology
    > (541) 842-1021
    >

    mailtoave.Vorgang@Medford.k12.or.usave.Vorgang@Medford.k
    12.or.us>
    >
    >
    > * To join/leave the list, search archives, change list settings, *
    > * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
    >


    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


  4. Re: Converting Vplus to .Net

    Hi Charlie,


    One of the goals is to eliminate the HP3000 altogether. So, we are planning on porting over the HP3000 cobol to Fujitsu cobol for .net.

    The database will also be ported in that we will take the turbo image structure and go directly to sql server. The new cobol programs will not need to be changed since we will write wrappers for both the image calls and the vplus calls.

    Currently I am struggling with the vplus calls.

    Thank you for replying and any additional insight would be welcomed.

    Dave Vorgang
    Senior Programmer / Analyst
    Medford School District - Information Technology
    (541) 842-1021
    mailtoave.Vorgang@Medford.k12.or.us


    -----Original Message-----
    From: Charles C Cookston [mailto:CharlieCookston@WebNavigation.Net]
    Sent: Tuesday, October 21, 2008 9:51 AM
    To: Dave Vorgang; HP3000-L@RAVEN.UTC.EDU
    Cc: doug@mnisoft.com
    Subject: RE: [HP3000-L] Converting Vplus to .Net

    Dave,
    I have already done this a couple of ways.

    1) If you want to preserve your COBOL then you can create a .Net form and
    package up the data in the exact format the ViewRead would see it. On the HP
    you would have a listener program that would receive the data string. We
    used Minisoft's Middleman to do this.

    The receiving program would be a copy of your original COBOL where the
    string would be considered the return value from the View3000 Read. We used
    this method for several years.

    2) We eventually took one screen at a time and did it completely in .Net.
    Again we used Minisoft for the connection. We did not use SlowDBC. We did
    DBFIND, DBGET, DBUPDATE, DBDELETE directly from the VB or C# code. This is
    very fast and allows all the features of a .Net application with the HP3000
    as a data server.

    Both approaches took a little programming be since I know the HP3000 and its
    languages and I know .Net, it was not too difficult.

    Charlie Cookston
    Web Navigation LLC
    HP3000 contract services

    -----Original Message-----
    From: HP-3000 Systems Discussion [mailto:HP3000-L@RAVEN.UTC.EDU] On Behalf
    Of Dave Vorgang
    Sent: Tuesday, October 21, 2008 12:25 PM
    To: HP3000-L@RAVEN.UTC.EDU
    Subject: Re: [HP3000-L] Converting Vplus to .Net

    Our student system is homegrown. All done with cobol/vplus/image. I've
    been assigned the task of wrapping all the vplus intrinsic calls to perform
    their vb.net equivalence. The idea being that we can simply take our
    existing cobol apps, run them through a converter to convert them to Fijitsu
    and then have my vplus routines display the forms.

    Dave Vorgang
    Senior Programmer / Analyst
    Medford School District - Information Technology
    (541) 842-1021
    mailtoave.Vorgang@Medford.k12.or.us


    -----Original Message-----
    From: joseph dolliver [mailto:dolliverj@gmail.com]
    Sent: Tuesday, October 21, 2008 9:08 AM
    To: Dave Vorgang
    Subject: Re: [HP3000-L] Converting Vplus to .Net

    Dave, I am curious what application you are running for K12. Is it
    homegrown or a package?

    Thanks,
    Joe Dolliver

    On 10/21/08, Dave Vorgang wrote:
    > Hi All,
    >
    > I have just began working on this project for converting our existing

    HP3000
    > Vplus screens to use Fujitsu Cobol on backend and use .Net for the forms.
    >
    > What I plan to do is create routines to emulate the Vplus intrinsics. For
    > example, I have this routine to display the form:
    >
    > Private WithEvents _VFormFile As VplusBaseScreen.BaseFormMain
    >
    > Public Function VshowForm(ByVal comArea As ComAreaDefinition) As

    Boolean
    > _VFormFile.LoadScreen(_CurrentScreen)
    > _VFormFile.Show()
    > End Function
    >
    >
    > Then, this routine would perform the Vreadfields which basically blocks
    > execution of my application until _KeyEntered = True
    >
    > Public Function VreadFields(ByVal comArea As ComAreaDefinition) As
    > Boolean
    > _VFormFile.Focus()
    > _KeyEntered = False
    > Do Until _KeyEntered
    > System.Windows.Forms.Application.DoEvents()
    > Loop
    >
    > End Function
    >
    > Then, the form will raise events and set _KeyEntered = True when thereis
    > user interaction and the main process will catch those events like this:
    > Private Sub _VFormFile_LastKeyPressed(ByVal key As Integer) Handles
    > _VFormFile.LastKeyPressed
    > _KeyEntered = True
    > RaiseEvent LastKeyPressed(key)
    > End Sub
    > The above routine just raises the event back to its caller.
    >
    > This approach actually works but the Do Loop take 25% of the cpu.
    >
    > Now I know this is the HP3000 listserv but I thought I would give it a

    shot
    > since some may have tried to accomplish what I am trying to do.
    >
    > So, my question is: Is there a better way to accomplish what I'm trying

    to
    > do? Can/How would I place this on a different thread (if that's a way I
    > should do it).
    >
    >
    > Thanks,
    >
    > Dave Vorgang
    > Senior Programmer / Analyst
    > Medford School District - Information Technology
    > (541) 842-1021
    >

    mailtoave.Vorgang@Medford.k12.or.usave.Vorgang@Medford.k
    12.or.us>
    >
    >
    > * To join/leave the list, search archives, change list settings, *
    > * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
    >


    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


  5. Re: Converting Vplus to .Net

    Hmm, interesting code, Dave, and it looks fun.

    I don't mean to hijack your thread, but how do you handle the I/O for
    more than 3k one process running on the client side? I'd assume you had
    to write some handler on the 3k that did the I/O for each PIN?

    -----Original Message-----
    From: HP-3000 Systems Discussion [mailto:HP3000-L@RAVEN.UTC.EDU] On
    Behalf Of Dave Vorgang
    Sent: Tuesday, October 21, 2008 10:27 AM
    To: HP3000-L@RAVEN.UTC.EDU
    Subject: [HP3000-L] Converting Vplus to .Net

    Hi All,

    I have just began working on this project for converting our existing
    HP3000 Vplus screens to use Fujitsu Cobol on backend and use .Net for
    the forms.

    What I plan to do is create routines to emulate the Vplus intrinsics.
    For example, I have this routine to display the form:

    Private WithEvents _VFormFile As VplusBaseScreen.BaseFormMain

    Public Function VshowForm(ByVal comArea As ComAreaDefinition) As
    Boolean
    _VFormFile.LoadScreen(_CurrentScreen)
    _VFormFile.Show()
    End Function


    Then, this routine would perform the Vreadfields which basically blocks
    execution of my application until _KeyEntered = True

    Public Function VreadFields(ByVal comArea As ComAreaDefinition) As
    Boolean
    _VFormFile.Focus()
    _KeyEntered = False
    Do Until _KeyEntered
    System.Windows.Forms.Application.DoEvents()
    Loop

    End Function

    Then, the form will raise events and set _KeyEntered = True when there
    is user interaction and the main process will catch those events like
    this:
    Private Sub _VFormFile_LastKeyPressed(ByVal key As Integer) Handles
    _VFormFile.LastKeyPressed
    _KeyEntered = True
    RaiseEvent LastKeyPressed(key)
    End Sub
    The above routine just raises the event back to its caller.

    This approach actually works but the Do Loop take 25% of the cpu.

    Now I know this is the HP3000 listserv but I thought I would give it a
    shot since some may have tried to accomplish what I am trying to do.

    So, my question is: Is there a better way to accomplish what I'm trying
    to do? Can/How would I place this on a different thread (if that's a
    way I should do it).


    Thanks,

    Dave Vorgang
    Senior Programmer / Analyst
    Medford School District - Information Technology
    (541) 842-1021
    mailtoave.Vorgang@Medford.k12.or.usave.Vorgang@Medfo
    rd.k12.or.us>


    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


  6. Re: Converting Vplus to .Net

    Actually, the whole thing is going to be server side with terminal servicesas the thin client. I haven't done this before so I really don't know much about it. We are going to be working with a third-party to help with some of that but they don't know too much about .net.

    Dave Vorgang
    Senior Programmer / Analyst
    Medford School District - Information Technology
    (541) 842-1021
    mailtoave.Vorgang@Medford.k12.or.us

    -----Original Message-----
    From: Ray Shahan [mailto:rshahan@republictitle.com]
    Sent: Tuesday, October 21, 2008 11:20 AM
    To: Dave Vorgang; HP3000-L@RAVEN.UTC.EDU
    Subject: RE: [HP3000-L] Converting Vplus to .Net

    Hmm, interesting code, Dave, and it looks fun.

    I don't mean to hijack your thread, but how do you handle the I/O for
    more than 3k one process running on the client side? I'd assume you had
    to write some handler on the 3k that did the I/O for each PIN?

    -----Original Message-----
    From: HP-3000 Systems Discussion [mailto:HP3000-L@RAVEN.UTC.EDU] On
    Behalf Of Dave Vorgang
    Sent: Tuesday, October 21, 2008 10:27 AM
    To: HP3000-L@RAVEN.UTC.EDU
    Subject: [HP3000-L] Converting Vplus to .Net

    Hi All,

    I have just began working on this project for converting our existing
    HP3000 Vplus screens to use Fujitsu Cobol on backend and use .Net for
    the forms.

    What I plan to do is create routines to emulate the Vplus intrinsics.
    For example, I have this routine to display the form:

    Private WithEvents _VFormFile As VplusBaseScreen.BaseFormMain

    Public Function VshowForm(ByVal comArea As ComAreaDefinition) As
    Boolean
    _VFormFile.LoadScreen(_CurrentScreen)
    _VFormFile.Show()
    End Function


    Then, this routine would perform the Vreadfields which basically blocks
    execution of my application until _KeyEntered = True

    Public Function VreadFields(ByVal comArea As ComAreaDefinition) As
    Boolean
    _VFormFile.Focus()
    _KeyEntered = False
    Do Until _KeyEntered
    System.Windows.Forms.Application.DoEvents()
    Loop

    End Function

    Then, the form will raise events and set _KeyEntered = True when there
    is user interaction and the main process will catch those events like
    this:
    Private Sub _VFormFile_LastKeyPressed(ByVal key As Integer) Handles
    _VFormFile.LastKeyPressed
    _KeyEntered = True
    RaiseEvent LastKeyPressed(key)
    End Sub
    The above routine just raises the event back to its caller.

    This approach actually works but the Do Loop take 25% of the cpu.

    Now I know this is the HP3000 listserv but I thought I would give it a
    shot since some may have tried to accomplish what I am trying to do.

    So, my question is: Is there a better way to accomplish what I'm trying
    to do? Can/How would I place this on a different thread (if that's a
    way I should do it).


    Thanks,

    Dave Vorgang
    Senior Programmer / Analyst
    Medford School District - Information Technology
    (541) 842-1021
    mailtoave.Vorgang@Medford.k12.or.usave.Vorgang@Medfo
    rd.k12.or.us>


    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


  7. FREEVT3K

    Hi,

    Does anyone know where the freeVT3K Telamon s/w resides now?

    TIA
    jack

    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


  8. Re: FREEVT3K

    uh, probably no where at the moment :-(

    telamon was sold and sold and sold again, and it's likely that the new
    owners have/will not make the old server available again.

    however I fully expect to have the respository publically
    available soon.

    if you are in dire need of software, please let me know privately. - d

    ---
    Donna Hofmeister
    Allegro Consultants, Inc.
    408-252-2330


    > -----Original Message-----
    > From: HP-3000 Systems Discussion [mailto:HP3000-L@RAVEN.UTC.EDU] On
    > Behalf Of Jack Connor
    > Sent: Tuesday, October 21, 2008 2:23 PM
    > To: HP3000-L@RAVEN.UTC.EDU
    > Subject: [HP3000-L] FREEVT3K
    >
    > Hi,
    >
    > Does anyone know where the freeVT3K Telamon s/w resides now?
    >
    > TIA
    > jack
    >
    > * To join/leave the list, search archives, change list settings, *
    > * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


  9. Re: FREEVT3K

    in a pinch, this might do:

    http://jazz.external.hp.com/src/vt3k/

    - d

    ---
    Donna Hofmeister
    Allegro Consultants, Inc.
    408-252-2330


    > -----Original Message-----
    > From: HP-3000 Systems Discussion [mailto:HP3000-L@RAVEN.UTC.EDU] On
    > Behalf Of Jack Connor
    > Sent: Tuesday, October 21, 2008 2:23 PM
    > To: HP3000-L@RAVEN.UTC.EDU
    > Subject: [HP3000-L] FREEVT3K
    >
    > Hi,
    >
    > Does anyone know where the freeVT3K Telamon s/w resides now?
    >
    > TIA
    > jack
    >
    > * To join/leave the list, search archives, change list settings, *
    > * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


  10. Re: FREEVT3K

    Hmmm...

    > in a pinch, this might do:
    > http://jazz.external.hp.com/src/vt3k/


    this probably only helps HP-UX users, whereas freevt3k
    came with source code and for various platforms, as far
    as I recall (Linux comes to my mind immediately).

    I might also have an old copy somewhere,
    but as donna already mentioned she might
    have good news soon... I won't start to
    dig my pack-rat repositories right now.

    ;-) Lars

    * To join/leave the list, search archives, change list settings, *
    * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *


+ Reply to Thread