Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Pick Export To Excel

588 views
Skip to first unread message

nickbro

unread,
Feb 3, 2005, 10:29:45 AM2/3/05
to
I am looking for a way to export data from a PICK D3 database running
on a Unix server. I am currently using Wintegrate terminal emulation
software that makes it possible to export to Excel. The programs that
export to Excel etc use Wintegrate scripting commands to perform these
tasks. However, I need a way to do this using PICK Basic commands
only. I have accuterm 2k avaiable to me but I don't want to have to be
tied to either Wintegate or Accuterm. It's needs to indepent of the
emulation software. I currently use greenscreen apps developed in PICK
Basic and RPL. I need a solution I could implent using these. Please
help!

Thanks
nick

Bob Little

unread,
Feb 3, 2005, 11:03:41 AM2/3/05
to

Perhaps Glen Batchelor's MVWWW is what you need. I've not used it, but
it looks to do the job you are looking for without relying on terminal
emulation package functionality.

http://mvwww.sourceforge.net/

Setting the http response content-type=application/vnd.ms-excel should
get you what you want.

Mark Fuller

unread,
Feb 3, 2005, 11:07:26 AM2/3/05
to
Nick,

There are options you can consider such as ODBC and drive via Excel instead,
i.e. import data rather than pushing it out from the database. Other options
which are more radical include taking a look at Reality (switch from using
D3) as this can export data to CSV as if it was a standard MV file.

I'm sure others in the group will be able to give other suggestions.

Mark Fuller

"nickbro" <nicholas...@yahoo.com> wrote in message
news:1107444585.7...@l41g2000cwc.googlegroups.com...

nickbro

unread,
Feb 3, 2005, 11:28:53 AM2/3/05
to
Mark,

I've looked at some other threads that suggest the same thing. The
only problem is that they say do this and this but don't tell you how.
I know it's a little pathetic but I need someone to hold my hand and
walk me through or point me to somewhere that will. Please be gentle
-- I'm new at this.

Thanks,

Nick

Kevin Powick

unread,
Feb 3, 2005, 12:00:09 PM2/3/05
to
nickbro wrote:

> I am looking for a way to export data from a PICK D3 database

Check out Tony Gravagno's NebulaAnalysis at Nebula Research and
Development.

http://www.nebula-rnd.com/products/analysis.htm

--
Kevin Powick

nickbro

unread,
Feb 3, 2005, 1:33:48 PM2/3/05
to
Kevin,

I need something free. Thanks anyway.

Nick

Mark Brown

unread,
Feb 3, 2005, 1:39:18 PM2/3/05
to
build a dynamic array of your data, one attribute per row, once value per
column

Convert VM to tab, AM to CR

Store in OSFI via supper q-pointer or, if you've got samba, directly to the
DOS world.

Mark Brown

"Let us just go and be killed where we're told. Is life worth so many
questions"
Arimas, The Three Musketteers


"nickbro" <nicholas...@yahoo.com> wrote in message
news:1107444585.7...@l41g2000cwc.googlegroups.com...

Jeffrey Kaufman

unread,
Feb 3, 2005, 10:43:03 AM2/3/05
to
The easiest way is using third party software. I use Accuterm routinely.
Other than that, your options are:

1) Write the file out to a floppy disk and transport the disk where ever you
wish.
2) Write the file out to Unix and ftp it to its destination.
3) Use ODBC.

I'm sure there are other methods. I hope this helps.

"nickbro" <nicholas...@yahoo.com> wrote in message
news:1107444585.7...@l41g2000cwc.googlegroups.com...

Tony Gravagno

unread,
Feb 3, 2005, 5:34:17 PM2/3/05
to
Thanks Kevin - There is also a downloadable audio/video presentation
to show NebulAnalysis in action. Email for info.
TG at removethisNebula-rnd dotster com

I'm no longer offering NebulAnalysis for sale, but I do offer services
using that and other tools for Excel integration. The painful
decision was due in part to lack of "critical mass" of interest, and
due to the fact that some of the functionality was obsoleted by
enhancements to Excel itself in terms of XML and HTML.

Excel is a powerful tool that does charts and graphs, and high quality
formatting, but most MV people are comfortable throwing plain text it.
Personally I think this is inadequate for Excel power-users. I just
wish VARs would ask their users how long it takes to work with data
that's been dumped as a CSV with wIntegrate or Accuterm. I hear
numbers in terms of hours and days - and that's why I wrote
NebulAnalysis. Well, my wife loves it, and if she has her way, I'll
offer it again one of these days.

Anyway, Nick - I have extensive experience in this area, including
integration of RPL software with other environments. Within the last
couple of months I was hooking up an RPL app with FlashCONNECT for web
pages. I've setup corporate-level Web Services with RPL apps as well,
and I may do some work soon to integrate RPL apps with my NebulaPay
payment processing software - In this regard, RPL is the same as BASIC
as far as I'm concerned. I don't provide free detailed recipes on how
to make this work though, I sell product and services. That's
something else my wife and I have discussed in the past. Maybe she
should do my marketing, I dunno... :)

HTH,
Tony

Mark Ballinger

unread,
Feb 3, 2005, 5:44:56 PM2/3/05
to

Do what Mark Brown said, then save your file to your filesystem. Open it
with a perl script that makes use of Spreadsheet::WriteExcel.

http://search.cpan.org/dist/Spreadsheet-WriteExcel/

Your script can save it as an xls file. Or skip all of the above and
write out html or xml.

Cleber Vieira Baptista

unread,
Feb 3, 2005, 6:00:27 PM2/3/05
to

:ED MD FileExcel
top
.P

001 Q
002
003 UNIX:/tmp
eoi 003


:ED BP ExportsForExcel
top
.P

001 PROMPT ""
002 OPEN "FileExcel" TO FileExcel ELSE STOP "FileExcel"
003 OPEN "FileD3" TO FileD3 ELSE STOP "FileD3"
004 EQU NAME TO 1
005 EQU ADDRESS TO 2
006 TITLE = "COD;NAME;ADDRESS"
007 FIM = ""
008 CT = 1
009 CHAVE$BASICA = "LISTA.CSV"
010 WRITEV TITLE ON FileExcel,CHAVE$BASICA,CT
011 EXECUTE 'SELECT FileD3'
012 LOOP
013 READNEXT ID ELSE FIM = 1
014 UNTIL FIM DO
015 READ I$ FROM FileD3,ID ELSE I$ = ""
016 CT = CT + 1
017 LIN$ = ID:";":I$<NAME>:";":I$<ADDRESS>
018 WRITEV LIN$ ON FileExcel,CHAVE$BASICA,CT
019 LIN$ = ""
020 REPEAT
021 STOP

Robert S. Lobel

unread,
Feb 3, 2005, 7:11:27 PM2/3/05
to
Nick:

For relatively small files (< 1 mb) the cheapest (free) and simplest way to
export d3 data with flashbasic is to use the screen capture feature of
windows hyperterminal (or other terminal emulator) to produce fixed length
field (or csv) text files. Fixed length field text files (.txt) can be
opened and imported into Excel very easily.

Rob


"nickbro" <nicholas...@yahoo.com> wrote in message
news:1107444585.7...@l41g2000cwc.googlegroups.com...

Scott Ballinger

unread,
Feb 4, 2005, 12:46:19 AM2/4/05
to
Mark Brown wrote:
> build a dynamic array of your data, one attribute per row, once value per
> column
>
> Convert VM to tab, AM to CR
>
> Store in OSFI via supper q-pointer or, if you've got samba, directly to the
> DOS world.

This is the simplest way to do it. D3 also has a semi-documented feature
called "tabbed output" that will produce tab-delimited output from a
sort or list command. You need to tweak the 'sort' or 'list' verb
definition item in your md (google this group for the specifics). I
usually create verbs called 'sortt' and 'listt' that do this. It works
very well and is fast, and it will convert anything that you define in
the file dictionary: a & f correlatives, call's, and translates. I
capture the output in the spooler then read it with a basic program that
converts @am to cr:lf, then writes it out to a linux samba directory.

If you name the file xxx.xls, a tab-delimited file will open with excel
when you double-click it. However, the column width and formatting will
all be general, and you will have to handle specific formatting after
opening.

In my view, the preferred solution is to write an html file named
xxxx.xls, then excel will open it and the formatting will be perfect.
You can save an existing spreadsheet as html, then open with notepad to
see how excel uses html to format a spreadsheet.

Another option is to do the same thing, but use xml instead of html. The
only drawback to this is that users with excel 97 (and maybe 2000?) can
open an html file but you need office 2003? to open the xml file
correctly in excel. I challenge someone to write this html or xml code
and post for the group!

Scott Ballinger
Pareto Corporation
Edmonds WA USA


Here is a sample program that makes a tab-delimited file from tcl:

syntax is "make.tabfile unixfile pickfile thing thing thing..."

001 * create tab-delimited file from active select list
002 * 06-02-03 asb
003
004 * syntax: make.tabfile filename pickfile pickfield
pickfield...pickfield}
005 * filename = unix filename written to current directory
006 * pickfile = pick file name
007 * pickfield{s} = field(s) defined in the dictionary of pickfile
008
009 include dm,bp,unix.h mode.h
010
011 tclread buf
012 buf = trim(buf)
013 pos = index(buf,"make.tabfile",1)
014 buf = buf[pos,999]
015 filename = field(buf," ",2)
016 pickfile = field(buf," ",3)
017 fields = buf[col2()+1,999]
018
019 if filename eq "" then go 9999
020 if pickfile eq "" then go 9999
021 if fields eq "" then go 9999
022 open pickfile else
023 print
024 print "'":pickfile:"' is not a valid file on this account"
025 print
026 go 9999
027 end
028
029 tot = system(11)
030 if tot else stop "no select list?!"
031 open "pointer-file" then
032 delete "make.tabfile"
033 end
034 execute "save-list make.tabfile"
035
036 c = 0
037 t = time()
038 d = date()
039 tab = char(9)
040 cr = char(13)
041 lf = char(10)
042 crlf = cr:lf
043
044 execute "sp-assign hs"
045 execute "get-list make.tabfile"
046 cmd = "listt ":pickfile:" ":fields:" (ipt"
047 print cmd
048 execute cmd
049
050 spl = system(20)
051 open "peqs" to peqs else stop 201,"peqs"
052 read rec from peqs,spl else stop 201,spl
053 delete peqs,spl
054 convert cr to @am in rec
055
056 select rec to list
057
058 * rw-rw-rw-
059 fd = %creat(filename,s$irusr+s$iwusr+s$irgrp+s$iwgrp+s$iroth+s$iwoth)
060 * after default umask 0222 becomes rw-r--r--
061
062 if fd eq -1 then
063 print "error! could not create file '":filename:"' errno = ":system(0)
064 stop
065 end
066
067 * make first row of column headers
068 line = fields
069 convert " " to tab in line
070 gosub 1000
071
072 10 *
073
074 readnext line from list else go 99
075
076 * strip the trailing tab from the line
077 len = len(line)
078 last.char = line[len,1]
079 if last.char eq tab then
080 line = line[1,len - 1]
081 end
082
083 gosub 1000
084 c +=1
085 if mod(c,100) eq 0 then
086 call counter.sub(c,t,d,tot,txt)
087 print cr:c:txt:
088 end
089
090 go 10
091
092 99 *
093
094 call final.count(c,t,d)
095
096 stop
097
098 1000 * write line to file
099
100 line := cr:lf ;* dos format, unix format is just lf
101 s = len(line)
102 w = %write(fd,line,s)
103
104 return
105
106
107 9999 * error exit
108
109 print
110 print "usage: MAKE.TABFILE filename pickfile pickfield
{pickfield...pickfi
eld}"
111 print " filename = unix filename written to current directory"
112 print " pickfile = pick file name "
113 print " pickfield{s} = field(s) definined in the dictionary of pickfile"
114 stop
115

counter.sub
001 sub (c,t,d,tot,txt)
002 * 03-20-00 asb: in-line counter
003 * c = current count
004 * t = start time
005 * d = start date
006 * tot = total count
007 * txt = text string: " pp% done (hh:mm:ss left @ yyy.y/sec)"
008
009 if assigned(c) else c = 0
010 if assigned(t) else t = time()
011 if assigned(d) else d = date()
012 if assigned(tot) else tot = 0
013
014 if tot eq 0 then
015 txt = ""
016 return
017 end
018
019 days = (date() - d) * 86400
020 x = (time() - t) + days
021 if x eq 0 then x = 1 ;* elapsed time in seconds
022 y = c / x ;* current rate per second
023 r = tot - c ;* number remaining
024 s = r / y ;* number of seconds to process remaining
025 p = (c*100) / tot ;* percent complete
026
027 x = oconv(x,"mts")
028 if x[1,2] eq "00" then x = x[4,5] ;* remove hours if zero
029 y = y "l1"
030 s = oconv(s,"mts")
031 if s[1,2] eq "00" then s = s[4,5] ;* remove hours if zero
032 p = int(p)
033
034 txt = " ":p:"% done in ":x:" (":s:" left @ ":y:"/sec)":@(-4)
035
036 return

final.count
001 subroutine final.count(c,t,d)
002
003 * print "ccc records processed in hh:mm:ss = yyy.y per second."
004 * c = final count
005 * t = starting time
006 * d = starting date
007
008 days = (date() - d) * 86400
009 x = (time() - t) + days
010 if x eq 0 then x = 1
011 z = oconv(x,"mts")
012 if z[1,2] eq "00" then z = z[4,5]
013
014 y = c/x "l1"
015
016 crt @(0):@(-4):c:" records processed in ":z:" = ":y:" per second."
017
018 return


listt
001 va
002 aa]57]53
^^
I think this '53' value is the special thing to make tabbed output.

Tony Gravagno

unread,
Feb 4, 2005, 4:43:47 AM2/4/05
to
Two things Scott:
1) Regarding 'sortt': Copy md sort to sortt. Modify atb2 to include
a third value equal to '53'. This should work for any access-class
verb but I would encourage caution to make sure the feature works
properly before installing/upgrading any new release. I've seen
updates to D3 documentation that have a good blurb on this. I'd tell
you where the updates are but the contract says I'd have to kill you
and then RD would have to kill me.
2) About HTML and XML output: You don't need anyone here to write it,
just work backwords: Create a small spreadsheet with simple data, then
Save-As HTML or XML and analyze the results. Import the data into D3
and use it as a template for subsequent exports. Anything else out of
me and I start sending invoices. :)

T

Luke Webber

unread,
Feb 4, 2005, 7:38:02 AM2/4/05
to

I've done a lot of this sort of work over the past year or so, and I can
heartily recommend that you use Microsoft's peculiar form of HTML, as
(sort of) specified in the Excel Web Connectivity Kit...

http://www.microsoft.com/downloads/details.aspx?FamilyID=221CE325-9D73-48C1-9081-034E4931BC87&displaylang=EN

That'll wrap, but you can rebuild it.

The trouble is, there are some important parts missing from this
so-called spec. In particular, formatting for dates, numbers and text
using css styles and the "vnd.ms-excel.numberformat" MS extension.

If you're interested, drop me an email and I can send you a sample or two.

Cheers,
Luke

Luke Webber

unread,
Feb 4, 2005, 8:11:47 AM2/4/05
to
Tony Gravagno wrote:
> Two things Scott:
> 1) Regarding 'sortt': Copy md sort to sortt. Modify atb2 to include
> a third value equal to '53'. This should work for any access-class
> verb but I would encourage caution to make sure the feature works
> properly before installing/upgrading any new release. I've seen
> updates to D3 documentation that have a good blurb on this. I'd tell
> you where the updates are but the contract says I'd have to kill you
> and then RD would have to kill me.
> 2) About HTML and XML output: You don't need anyone here to write it,
> just work backwords: Create a small spreadsheet with simple data, then
> Save-As HTML or XML and analyze the results. Import the data into D3
> and use it as a template for subsequent exports. Anything else out of
> me and I start sending invoices. :)

The trouble with working backwards is, of course, that Excel lards the
output with a load of obscure crud that, in many cases, you can well and
truly do without. One reason why I recommend starting from the Web
Connectivity Kit, which is poorly documented, but at least there is
*some* documentation.

I note with pleasure that OpenOffice.org are in their process of
submitting their OpenDocument standard for EU standards status. A Very
Good Thing, IMO. And M$ is scrambling to make it look as if they are
prepared to support open document formats as well, without actually
doing so.

Luke

nickbro

unread,
Feb 4, 2005, 9:52:43 AM2/4/05
to
Thanks to everyone for your responeses.

However, I think I need to clarify a little. I need to allow a user to
run a program and export the document directly to their hard drive
running Windows (98-XP) and using Office (XP - 2003). I don't want to
have to store it on the UNIX server if it can be helped. I suppose I
could write a program to use the Accuterm functions but then I would
have to have two programs to one thing and the user would have to know
if they're using Wintegrate or Accuterm which may not sound difficult
but you'd be surprised. And if in the future I wanted to change the
emulation software I would be right where I started. Anyway enough of
my ranting. Thanks again for your help

Nick

Kevin Powick

unread,
Feb 4, 2005, 12:00:05 PM2/4/05
to
nickbro wrote:

I think that for the time and effort you will be putting into this,
your "free" solution will cost you a lot more than you think.

I would reconsider a 3rd party solution.

--
Kevin Powick

sc...@pareto.net

unread,
Feb 4, 2005, 1:03:08 PM2/4/05
to
Nick,

Most terminal emulators these days support automatic zmodem download;
after writing the file to a unix directory, run zmodem send from the
host and your terminal emulator should capture the file in your default
download directory. In linux the command is "sz FILENAME." man sz for
more. However, the benefit of doing this using the accuterm tools is
that you can specify the location where you want to put this particular
file on the user's PC. Really though, the better solution is a samba or
other share that is mapped as the user's S: (or whatever) drive. If you
are expecting the user to find the file they just downloaded, it seems
to me they can just as easily find it in the S: drive as anywhere else.

Scott Ballinger
Pareto Corporation
Edmonds WA USA

206 713 6006

Tony Gravagno

unread,
Feb 4, 2005, 3:08:23 PM2/4/05
to
"Kevin Powick" <nos...@spamless.com> wrote:

Cat's out of the bag - I wanted to see how much time/money was going
to be wasted in discussion and potential coding for a "free" solution.
The reason I wrote NebulAnalysis is exactly for the reasons we see
here. It avoids the multi-emulator issue or purchase of an emulator
at all. It doesn't even require a PC, you can use it from a green
screen. You don't need Samba/shares or any other inter-system
mapping. You don't need to manually generate/parse HTML or XML. You
don't need to worry about whether Microsoft is conforming to
standards. It _is_ Pure Pick BASIC for the guy that doesn't know or
want to know about anything else. And the cost? It was only $600 for
a server component that would serve an office full of people - less
than the cost of an AccuTerm site license. By the time you learned
enough technology to implement your free solution you would certainly
have spent a lot more than that.

After all of this discussion about XML and HTML, I'll bet very few
people have really implemented a good solution using them - especially
charts or graphs which MIS usually leaves to the end-user to figure
out. I'm guessing most people look at these discussions, say to
themselves "yeah, I can do that" and then when they sit down at Excel
the fog rolls in and the project gets put off for another couple
months. If this happens to you then you are a great candidate for
Nebula products and services which put everything back at the BASIC
level.

That said, again, I'm sorry but NebulAnalysis is no longer available
but it may be if I can get some time to take another look at it.

Tony

Patrick Latimer

unread,
Feb 4, 2005, 5:00:23 PM2/4/05
to
nickbro wrote:
> Thanks to everyone for your responeses.
>
> However, I think I need to clarify a little. I need to allow a user to
> run a program and export the document directly to their hard drive
> running Windows (98-XP) and using Office (XP - 2003). I don't want to
> have to store it on the UNIX server if it can be helped. I suppose I
> could write a program to use the Accuterm functions but then I would
> have to have two programs to one thing and the user would have to know
> if they're using Wintegrate or Accuterm which may not sound difficult
> but you'd be surprised.
If the process does EXECUTE FTTCL CAPTURING TYPE
TYPE will be **TCL** is Accuterm. I would hope Wintegrate
would have a similar function. Exporting to Excel is also
an EXECUTE and a few DATA statements. Again I would hope
Wintegrate would do the same.

HTH, Patrick <;=)

Cleber Vieira Baptista

unread,
Feb 4, 2005, 5:59:30 PM2/4/05
to
"nickbro" <nicholas...@yahoo.com> wrote in message news:<1107528763....@l41g2000cwc.googlegroups.com>...

Dear Nick

Excuse, I don't speak well in English.

A very simple way of exporting data of D3 for Excel, using Pick Basic
independent of the terminal emulator.

First it activates the Samba;

Share a directory in the station Windows;

Create a directory in Unix to mount the sharing Windows:
#mkdir /mnt/FilesExcel

Mount the directory shared in Unix. In Linux I use:
#mount -t smbfs -o username=UserWindows,password=PasswordUserWindows
//Name of the station Windows or IP/Name of the sharing Windows
/mnt/FilesExcel

Don't use spaces in the name of the windows machine and of the
sharing;

It can mount in MD USER-COLDSTART:
001 n
002!mount -t ...

Or

001 PQ
002 H!mount -t ...
003 P

Or in the tcl
!mount -t ...

Or in Basic Programs
EXECUTE '!mount -t ...'

Create a connection (link) between D3 and the sharing Windows;


:ED MD FilesExcel
top
.P

001 Q
002
003 /mnt/FilesExcel
eoi 003


See a very simple example of code in PickBasic:

:ED BP ExportsForExcel
top
.P

001 PROMPT ""
002 OPEN "FilesExcel" TO FilesExcel ELSE STOP "FilesExcel"


003 OPEN "FileD3" TO FileD3 ELSE STOP "FileD3"
004 EQU NAME TO 1
005 EQU ADDRESS TO 2
006 TITLE = "COD;NAME;ADDRESS"
007 FIM = ""
008 CT = 1
009 CHAVE$BASICA = "LISTA.CSV"

010 WRITEV TITLE ON FilesExcel,CHAVE$BASICA,CT


011 EXECUTE 'SELECT FileD3'
012 LOOP
013 READNEXT ID ELSE FIM = 1
014 UNTIL FIM DO
015 READ I$ FROM FileD3,ID ELSE I$ = ""
016 CT = CT + 1
017 LIN$ = ID:";":I$<NAME>:";":I$<ADDRESS>

018 WRITEV LIN$ ON FilesExcel,CHAVE$BASICA,CT


019 LIN$ = ""
020 REPEAT
021 STOP


Engraving as text file, commas separating the columns, extension csv.
Files with extension csv can be open for the excel.


Good luck.

Cleber

dun...@infochan.com

unread,
Feb 4, 2005, 6:55:04 PM2/4/05
to
Nick,
One way to solve the problem is to write an Excel macro that executes
an Access statement and captures the result.

The following VBA code will do that but it has the following
limitations.
1) It consumes a user in pick until you close the excel workbook
2) It scrambles the data if attribute 3 of the dictionary that you are
using in your access statement has blanks in it. You can solve this by
replacing blanks with _ or some other character.

The code:
-----------------------------------------------------------

Sub GetTCLOuputMSDAO()
'Get TCL output using the Microsoft DAO Object Library
Dim dbD3 As Database
Dim rStmt As Recordset
Dim fld As Field
Dim CurrentCell As Object
Dim NextCell As Object
Dim I As Integer
Dim sTCLCommand As String
Dim sResult As String
Dim sDataSource As String

'Get TCL Command
sWorksheet = "TCL Command"
Sheets(sWorksheet).Activate
Set CurrentCell = [b1]
sTCLCommand = "[{W}{B}]"
With CurrentCell
For I = 0 To 8
sTCLCommand = sTCLCommand & .Offset(I, 0).Value & " "
Next I
sDataSource = .Offset(9, 0).Value
End With
sTCLCommand = Trim$(sTCLCommand)


'Clear out sheet
sWorksheet = "Output"
Sheets(sWorksheet).Activate
ActiveSheet.UsedRange.Select
Selection.Clear
Selection.EntireRow.Hidden = False

'Connect to Pick and get data
Set dbD3 = ConnectD3Source(sDataSource)
Set rStmt = dbD3.OpenRecordSet(sTCLCommand, dbOpenDynaset,
dbSQLPassThrough)
'Fill spreadsheet with pick data
Set CurrentCell = [a2]
Do While Not (rStmt.EOF)
For I = 0 To rStmt.Fields.Count - 1
'fill columns
sResult = Trim(rStmt.Fields(I).Value)
CurrentCell.Offset(0, I).Value = sResult
Next
Set NextCell = CurrentCell.Offset(1, 0) 'increment row
Set CurrentCell = NextCell
rStmt.MoveNext
Loop

I = 0
For Each fld In rStmt.Fields
I = I + 1
ActiveSheet.Cells(1, I).Value = Replace(fld.Name, "_", " ")
Next fld
' Set column so its readable
rStmt.Close
ActiveSheet.UsedRange.Columns.AutoFit
End Sub

Function ConnectD3Source(sDSName As String) As Database
Set ConnectD3Source = Workspaces(0).OpenDatabase(sDSName, False,
False, "ODBC;")

End Function
-------------------------------------------------

The spreadsheet will need 2 worksheets. One called "TCL Command" and a
second called "Output"

Put the command in the first 10 rows of column B in the sheet called
"TCL Command"

I have the following headings in col A:

Verb
File Reference
Item List
Selection Criteria
Sort Criteria
Output Spec 1
Output Spec 2
Output Spec 3
Options
DSN Server

An example of the data in col B might be

sort
product.file
= "001]"
with description = "lamp"
by description
product.no description price
location
last.sale.date
id-supp
Valid_ODBC_DSN_Name

Luke Webber

unread,
Feb 4, 2005, 9:32:02 PM2/4/05
to
Cleber Vieira Baptista wrote:

> Dear Nick
>
> Excuse, I don't speak well in English.
>
> A very simple way of exporting data of D3 for Excel, using Pick Basic
> independent of the terminal emulator.
>
> First it activates the Samba;
>
> Share a directory in the station Windows;

Precisely. Why bother about writing to user's local disks when that's
what networks are all about? If you're worried that the users might
overwrite each other's files, give 'em a folder each, based on port user
name or port number. It's not rocket science.

Luke

Tony Gravagno

unread,
Feb 6, 2005, 4:56:53 PM2/6/05
to
Tony Gravagno <g6q3x9...@sneakemail.com.invalid> wrote:
>Regarding 'sortt': Copy md sort to sortt. Modify atb2 to include
>a third value equal to '53'. This should work for any access-class
>verb but I would encourage caution to make sure the feature works
>properly before installing/upgrading any new release.

For Googlers who stumble on this topic, I just found a note that I
made to myself in 2003 about this functionality. I have no idea if
these issues are still valid and won't take the time to ask RD. Just
keep your eyes open if you're using this tab delimited functionality:
----
1) When using 'grand-total' connective, access 'Sort' statement from
TCL shows good output. Same statement with 'SortT' eliminates the
grand-total text, and the grand-total data is offset one column.
2) In BASIC using "execute the.statement capturing output" where SortT
is being used will result in a runaway overflow of segment marks.
3) Output does not include column headers when Tab delimited.
(Probably intentional, not sure?)
----

Jim

unread,
Feb 8, 2005, 4:21:09 AM2/8/05
to
ODBC (or OLEDB); why say more?


"Mark Fuller" <markNOSP...@nospamnorthgate-is.com> wrote in message
news:ctthql$a...@relay1.northgate-is.com...

Jeffrey Kaufman

unread,
Feb 9, 2005, 4:28:35 PM2/9/05
to

"Tony Gravagno" <g6q3x9...@sneakemail.com.invalid> wrote in message
news:fk6k01ptuoar0peh0...@4ax.com...

> "nickbro" <nicholas...@yahoo.com> wrote:
> >I am looking for a way to export data from a PICK D3 database
[snip]
>
> Digression 1:
> Unfortunately as always, people want everything for free. Seems like
> this is where the concept of supply and demand breaks down - the more
> users demand everything for free, the less developers are going to
> supply at all.
>

We pay a hell of a lot of money to RD. $450 per seat. $90 per user PER YEAR.
I send them thousands of dollars every year just for the SMA renewals. I
think we should be able to expect more than just bug fixes for that price.

> Digression 2:
> As an aside, I'm a bit frustrated with the overall concept that RD has
> an interface to their system, they don't want anyone else to use it,
> but they don't want to enhance it themselves either. It sort of
> defeats the purpose of creating pipes into the product. OSFI has a
> lot of potential to create interfaces to other environments,
> protocols, etc, especially in the world of Web Services. Consider:
> open "http://myserver" f.http else stop
> read page from f.http "index.htm" ...
> open "excel:c:/temp/abc.xls|workbook1" to f.xls
> read sheet1 from f.xls,"sheet1" ...
> open "pdf:/var/tmp" to f.pdf
> read doc from f.pdf,"pdfdoc.pdf" ...
> open "outlook:c:/tmp/abc.pst|DefaultCalendar" to f.c
> select appointments from f.c
> open "webservice:http://url/abc.wsdl" to f.ws
> read result from f.ws, param1:",":param2 ...
>
> Doesn't anyone else see any value here?

Yes I see value, but I don't think I should have to pay extra for it.
Microsoft did not charge extra for SP2, a combination of bug fixes and
enhancements. Why should RD?

>
> BTW, I've done all of those things, just with different syntax. With
> some compiler pre-processing we could even use that syntax. As RD
> says though, if no one is going to pay for it then the features won't
> be made available. I guess this comes back to that other thread about
> why MV isn't evolving.

You nailed it.

>
> T...@digressionsRfree-solutionsRnotNebula-RnD.com
>


Dave Goldfinch

unread,
Feb 9, 2005, 7:42:52 PM2/9/05
to

Tony

Just maybe users are pissed off at paying maintenance year after year,
part of which is supposed to be for access to new releases. Presumably
new releases would incorporate some new features ? Now days they
seldom even fix the bugs !

Dave

<Snip>


>Digression 1:
>Unfortunately as always, people want everything for free. Seems like
>this is where the concept of supply and demand breaks down - the more
>users demand everything for free, the less developers are going to
>supply at all.
>

</Snip>

Sholom Hamada

unread,
Feb 10, 2005, 9:45:07 AM2/10/05
to
Tony Gravagno wrote:
> As RD
> says though, if no one is going to pay for it then the features won't
> be made available.

What a sad commentary on a company. They are only interested in
collecting our annual maintenance fees, but not give us anything in return.

Did Microsoft ask their customers to pay for the development of SP2?
Does Oracle ask its customers to pay for the further development of
Oracle? Does Intuit ask its customers to pay for the further development
of Quicken? (Sure we pay for the upgrade, but we also don't pay an
annual maintenance fee.) In fact, I can't think of another commercial
(not contracted) product that asks its customers to directly pay for
it's R&D. Can you?

Does RD really think that this position will get them increased
business? But then, maybe they are not interested in increased business,
only in milking the current customer base until it dries up.

Tony, I always suspected that this was RDs position, but hearing it from
you makes me really disheartened. Boy are we stuck. (But then there are
people who love it this way - "RD don't do anything new, because you
might break something old." People have expressed this sentiment in
previous posts about MVs lack of evolving.)

> I guess this comes back to that other thread about
> why MV isn't evolving.

Right on.

BobJ

unread,
Feb 10, 2005, 1:22:01 PM2/10/05
to
.When you are on the back side of the power curve then you crash and burn!
RD is in a position where they can't increase revenue or decrease cost and
cost exceeds revenue. That looks like the back side of the power curve to
me. HP fired their high profile CEO but RD doesn't have a high profile CEO
or even a high profile so what can they do? I think that they are doing the
only thing that they can do but nobody is answering their prayers.
BobJ
"Sholom Hamada" <sha...@prupipe.com> wrote in message
news:TrKOd.4702$UX3....@newsread3.news.pas.earthlink.net...

Tony Gravagno

unread,
Feb 10, 2005, 6:11:34 PM2/10/05
to
I think Bob has it right but I think people might be getting the wrong
angle on the RD position from my comments too. Please allow me to
restate how I see it and if I don't get it right this time then c'est
la vie.

About getting something for your support fees - if you look at the
Enhancements and Resolutions reports you'll see that there are a
number of ummm, Enhancements, that are listed with the bug fixes.
FlashCONNECT users may notice that they withdrew the 4.0 release which
was going to be a for-fee upgrade, and pulled major new features into
v3.5, which is a free upgrade for anyone on a support contract. This
was VERY progressive for them and I hope their faith in the market
isn't wasted. I understand something similar will be done for
upcoming D3 releases, so keep yer hats on.

About justifying changes: Any company, yours, mine, or RD, can incur
expense only if that act somehow helps to maintain or increases
revenue in the grander scheme. One-offs for goodwill are OK, but as a
matter of practice, if we spend money with no hope of recovery then
the business suffers. As a public company RD is especially sensitive
to anything that will cause unnecessary loss of revenue. They can't
waste development resources on something that will not help them to
pay their people or grow as a company, so they choose where they use
their resources carefully.

Their statement to me (and everyone) continues to be along the lines
of : if you can prove that we can generate some revenue by making
"change X" then we'll do it. While that position bothers me when I
personally think they should undertake some development effort, I
support it entirely as a principal of good business. It's a challenge
to make sure that an idea has legs, that it's not going to be just
another wasted development effort on cool software that no one uses.

So it should be easy to justify good ideas, right? If an idea is
good, many people will probably request it in some form independently.
How long have I been saying "if you want a change, file an action
item"? Well, you guys don't file a lot of enhancement requests for
features that will help you to sell software. And if you find bugs
most of you will ignore them rather than report them. Without some
corroboration, how do they know what change requests are good? Lack
of feedback from the field only reinforces their position, as smug as
it might seem.

Now about cases where they _have_ spent money: RD has spent a lot to
develop free features in D3 that you guys never use. This line about
"RD should give it to me for free because I pay a support contract" is
only valid if you're going to use what they provide. Those free
features don't really help to sell more systems, so they came up with
some more complex for-fee features that should have helped
(FlashCONNECT comes to mind as well as the Oracle Gateway and OpenDB).
People complained that they now wanted to use FlashCONNECT but
couldn't sell systems with added costs, so RD made FC free. But use
of FC didn't increase and neither did DBMS sales, so the price tag was
slapped back on. (There's that 'free' word biting us again.) When
they saw people weren't buying the DBMS _or_ the tools they decided to
write new tools to sell to outside markets and your competitors.
They're in business to stay in business by selling software, not to
nurse a self-destructive developer community. If people were actually
using and selling this great technology that we all love then none of
this would be necessary, and most of the for-fee tools that we see
would probably be free.

I take a hard line with a lot of things that RD does or doesn't do,
but over the years I also see that you guys aren't doing your part to
work with the software and people that make this all work. Companies
like IBM can afford to look magnanimous in this market because they
have VARs selling and supporting lots of large sites, but to get to
IBM, U2 users had a rough road with Unidata Inc, VMark, Ardent, and
Informix. Sholom mentioned Oracle, Microsoft, and Intuit - if RD had
a comparable volume of new sales then they could do similar things.
RD VARs prefer much smaller sites and generate much less revenue than
any of the companies mentioned above, so RD needs to be more selective
how they use their correspondingly small resources. People complain
about RD, but our history is littered with companies that are no
longer here because of the same market mentality that we see here -
expectations without reciprocation.

My approach to RD these days is to ask them to just make things stable
and to publish information for those of us who really want to use the
system. If they provide stable tools and interfaces, then in theory,
we can build products that can be used to help sell systems. In my
experience however, no matter what tools I build even based on their
most stable features, people won't buy them. So despite all of the
rhetoric from myself and others, I feel as compelled as RD to look
outside of this market for sustaining revenue, and I'm slowly and
grudgingly following a long line of others who have had similar
experience. If someone has a way to fix that problem, let's get it on
the table.

Tony
T...@blahblahblahNebula-RnD.com

Dave Goldfinch

unread,
Feb 10, 2005, 7:58:54 PM2/10/05
to
On Thu, 10 Feb 2005 15:11:34 -0800, Tony Gravagno
<g6q3x9...@sneakemail.com.invalid> wrote:


<SNIP>

But use
>of FC didn't increase and neither did DBMS sales, so the price tag was
>slapped back on.

</SNIP>

The beatings will continue until morale improves ? :-)

If that is the way their marketing gurus think, then there really is
no hope for the company.

Did they ever think of actually making contact with their developers
and users ? The only time we ever hear from them is when there is an
invoice due. How about some newsletters, brochures, case studies etc
NOT just put on the Web but actually pushed out to the community ?

By contrast, I am in the MSDN program and am overwhelmed with
information, software for evaluation etc and this costs a lot less
annualy than even a modest D3 licence !

<SNIP>


>
>I take a hard line with a lot of things that RD does or doesn't do,

>but over the years ....

</SNIP>

Where ? When ?

I am tired of hearing that I should report all bugs to RD. I used to
do this religously when working at a local software house - the
Australian distributor helped with a few issues, but of those passed
to RD, NOT ONE was fixed, so please explain to me WHY anyone would
carry on doing this ?


Message has been deleted

Tony Gravagno

unread,
Feb 10, 2005, 9:25:13 PM2/10/05
to
Dave Goldfinch <dave...@NotCoolMail.invalid> wrote:
>The beatings will continue until morale improves ? :-)

That was my mantra when I was employed there, then they terminated a
significant number of staff members and put us out of our misery. :)

>Did they ever think of actually making contact with their developers
>and users ? The only time we ever hear from them is when there is an
>invoice due. How about some newsletters, brochures, case studies etc
>NOT just put on the Web but actually pushed out to the community ?

I was in the RD office for a chat last week with that as a main agenda
item. Let me ask you this: what could they tell you about the
products which would prompt you to sell more systems? What would you
like to see a newsletter or brochure cover? Have you ever sent a note
to RD Marketing (or your VAR/Distributor) to ask for something
specific to keep you happy, productive, and on the leading edge?


>>I take a hard line with a lot of things that RD does or doesn't do,
>>but over the years ....
></SNIP>
>
>Where ? When ?

You apparently haven't been reading this forum for too long - and you
have no idea what a pain in the ass I was to RD Management during my
employment there, and even today, in support of issues that we discuss
here in CDP and elsewhere. I've made a number of enemies on both
sides of the fence for slapping people who seem to deserve it from
time to time. Unfortunately many people would rather kill the
messenger than address the issues. Others (VARs and people at RD)
have thanked me for balanced commentary, even if occasionally brutal.
I'm not too particular anymore about being diplomatic, that hasn't
worked in the past to motivate people (here or at RD) to keep the
market alive, so these days I'm a bit more hard line with everyone.
Tough love? Hey, whatever works. You don't see it? Maybe that's
better.


>I am tired of hearing that I should report all bugs to RD. I used to
>do this religously when working at a local software house - the
>Australian distributor helped with a few issues, but of those passed
>to RD, NOT ONE was fixed, so please explain to me WHY anyone would
>carry on doing this ?

This is exactly what we were talking about at RD last week. It costs
users time and money to diagnose and report bugs, so they generally
don't do it, especially when it doesn't look like it leads anywhere.
But unless users report issues, developers have no idea where the
priorities are. RD needs a painless way for people to report issues,
otherwise they don't know what they don't know - if you get my drift.
(Hey Mark B, here it is again...) I've reported hundreds of issues,
but to my disappointment too, many are never fixed because no one else
has reported them. If only one guy trips on a bug, how serious is it?
I personally believe ALL bugs should be fixed, but reality dictates
some prioritization. YOU users should establish the priorities, if
you don't then RD is free to set their own, and it seems none of us
are happy when they set their own priorities.

Here's a bit of info that you probably don't know. RD will purge
their bug and enhancement lists of issues that are over some number of
years old. The theory is that if only one person reports an issue or
request in a period of, say, five years, then it probably wasn't a
priority for anyone. Since the software and technologies change over
time, it's possible that people find alternative solutions given
enough time, so after five years or so it doesn't make sense to keep
items on file as if they might one day be processed. So if you want
your issue to stay in the queue then send them a follow-up about once
per year. As this malaise in the market gets worse, and less people
report bugs, it seems some of the older valuable ideas to improve the
software just drain out into the bit bucket. People think they've
said all they need to say - and the products stagnate...

If any particular bug is important to you, and you keep tripping on
it, then chances are good that someone else will too. If you
follow-up with RD and let them know that this is a chronic issue for
you then I know they'll review it - and they do make many fixes to
keep individuals happy, changes that no one else would ever notice.
Ever look at the Enhancements and Resolutions report and say to
yourself "what the hell is that about??" Behind many of those changes
you may find one developer who was just having a hard time and pursued
it with RD Support.

Does that explain why you should be filing bug reports and enhancement
requests?

T

BobJ

unread,
Feb 11, 2005, 7:02:46 AM2/11/05
to

"Tony Gravagno" <g6q3x9...@sneakemail.com.invalid> wrote in message >
Does that explain why you should be filing bug reports and enhancement
> requests?
>
> T

No, but it explains why you should migrate! Who cares about RD's problems.
We care about our customer's problems. And if our customer's problems are
difficult or impossible to fix using RD software then we will used someone
else's software. None is perfect. But jBase and U2 are so much better as a
whole from the customer support point of view that I haven't used RD for
more than 4 years. IBM support is not outstanding but jBase support is what
support should be. When you ask a question you get an answer. You may not
like the answer but you get an answer. Even if the question is dumb.
Peering through the small end of the telescope I don't see jBase having much
if any better chance of survival than RD so I'm not advising new
installations of jBase. Right now my preferred migration path for those who
want to stay with a Pick like platform but have to move from the current
platform for one reason or another is UV or UD with jBase being slightly
behind IBM just because of the survival problem. But you can't see much
looking through the wrong end and IBM could pull the plug when business
reasons indicate that they should do so. So IMHO new development should
probably be done in either Java or dot.net with the MS product being the
better choice despite the "I hate MS" attitude that seems to be prevelant in
this group. If you stand back far enough to get a good perspective on
things then you see some surprises. For instance, BSD is not SQL compliant
but is a terrific paltform for business applications where the end user does
no compose queries. And that is a much more common scenario than you might
think. The Microsft Scripting Host has matured to the point that VBS has
tremendous power and runs in the native Windows (XP or Server 3) environment
as a virtual engine. And runs fast. And allows accessing components. The
MSH also interprets JScript and Perl on the fly. Obviously it won't
interpret perl code that is aimed at *nix.

</Rant>

BobJ


Jeff Caspari

unread,
Feb 11, 2005, 9:51:18 AM2/11/05
to
[all true stuff from Tony snipped]

What then is RD's marketing strategy? The complaint is really that they are
balancing their books on the backs of their VARs and end-users.

What is RD's specific plan to increase the number of end-users other than
hoping for their VARs to place more orders?
Is it working?
Jeff


Richard Kann

unread,
Feb 11, 2005, 3:35:33 PM2/11/05
to
I just got an interesting email. RD gave me a list of my clients and
asked why they are not on support. Sems like all of a sudden they are
interested.

Funny thing, they weren't over the last 2 years that I refused to renew
each time and slowly switched them to Jbase. They also would not budge
on adding users for people that were not on support or giving a break to
those who wanted to get back on. At least not a break that matched what
Jbase was willing to give.

My guess is someone finally started looking at the former MV revenue and
the current MV revenue and noticed it did make a difference when people
jumped ship? Too little too late????? Um.......

Richard Kann
Comp-Ware Systems, Inc.

Tony Gravagno

unread,
Feb 11, 2005, 4:10:01 PM2/11/05
to
"Jeff Caspari" <FDFD...@sneakernet.com.invalid> wrote:

>[all true stuff from Tony snipped]
>
>What then is RD's marketing strategy? The complaint is really that they are
>balancing their books on the backs of their VARs and end-users.

It's anyone's guess about their strategy. Their tactical approaches
seem to include:
- create components that are Microsoft friendly
- partner with Microsoft for other opportunities (Reporting Services)
- approach markets that Microsoft would like to enter (IBM customers)
- use MV technology in completely non-MV environments (TigerLogic)

The first two items are of benefit to the existing RD VAR channel. I
see it as an olive branch, if only VARs would take it. The last three
items (note overlap) seem to be hedging bets for an exit strategy -
entirely reasonable given the attitude in this market.

If RD does well in outside markets it could help to fund continued
development with MV products. As always I don't think that will
happen - the projects that earn the funds get the funds, and the
projects that don't earn funds to support themselves get sold off or
canned completely. The answer in my mind ultimately comes back to
VARs learning, using, supporting, and selling the products they claim
to love so much.

>What is RD's specific plan to increase the number of end-users other than
>hoping for their VARs to place more orders?
>Is it working?
>Jeff

Again, no clue, and there are no more venues like the World User
Conferences to get those questions out in the open. Maybe Mario would
respond to the RDTA VAR group, doubt it because of the thorny topic.
What would you like them to do? They provide the base software, it's
up to the VAR channel to write and sell apps over it. I recommend you
send your questions and suggestions to RD Marketing.

I'm sure some of you don't like me constantly putting the ball back in
your court, but as I've said before, you either lead, follow, or get
out of the way. I recommend you lead because RD (is unfortunately not
taking the position of an industry leader (now that I think about it,
none of the DBMS vendors are really "leading" the market). I've been
asked a few times by VARs to talk with their end-users to get them
psyched up about their system. I do that, the customers are ready to
plonk money on the table for enchancements, but in most cases the VAR
somehow lets the ball drop. If that's the way it's going end up then
it doesn't matter what RD or any of the MV DBMS vendors do to help
grow the market.

Tony

greg_...@hotmail.com

unread,
Feb 11, 2005, 7:35:04 PM2/11/05
to
I agree with Mark. WriteExcel through Perl is the best solution for a
quick an easy way to create great looking excel spreadsheet. And best
of all its free.

We simply wrote a subroutine that creates and executes a perl script
that meets the standards for the WriteExcel perl package. Once the
subroutine executes, we use mailx to send the completed excel file to
the end user through email.

Dave Goldfinch

unread,
Feb 13, 2005, 7:26:13 PM2/13/05
to

Couldn't put it better myself !

Dave

da...@pixieware.com

unread,
Feb 14, 2005, 8:42:15 AM2/14/05
to

nickbro wrote:
> I am looking for a way to export data from a PICK D3 database running
> on a Unix server. I am currently using Wintegrate terminal emulation
> software that makes it possible to export to Excel.

Hello,

Please have a look at PixieExcel at:
http://www.pixieware.com/PixieInfo/exceltrans.htm

This should meet your requirements.

Sincerely,
Dave Johnstone. (Ph: 519-893-3984 - Canada)
PixieWare and HTML - the new GUI for TEXT systems
http://www.PixieWare.com mailto:da...@PixieWare.com

Bill H

unread,
Feb 16, 2005, 8:59:29 PM2/16/05
to
Tony:

I wouldn't call $450/seat + $90/year per seat in support costs free.
Actually, I'd suggest we're paying handsomely for improvements to D3. :-)

Bill

"Tony Gravagno" <g6q3x9...@sneakemail.com.invalid> wrote in message

news:fk6k01ptuoar0peh0...@4ax.com...

Tony Gravagno

unread,
Feb 17, 2005, 4:41:32 PM2/17/05
to
We don't disagree that good money paid should be put to good use. I
think we've all lost sight of the difference between rhetoric and firm
requests and requirements. As always, if you have a need for a
feature, file an action item. If enough people do so, in my
experience, eventually the feature gets added. The problem I'm
consistently seeing here, and one of the reasons why people outide CDP
tend to dismiss CDP as a real representation of the MV marketplace, is
that there is a lot posturing going on here but very little of that
translates into formal business requests to the vendor. I've never
heard anyone at RD say dismiss a mass number of requests for some
feature as fiscally or technically unworthy. In my various positions
there and even now, the comment I tend to hear is : we'd love to make
an enhancement like that but no one else is asking for it.

I'll qualify that - if they do get several requests for a feature,
they still need to cost-justify it, and they will ask the requestors
to do so: "please tell us why this particular feature adds value to
your development or end-user experience." That's hardly unreasonable.
But this is where the process breaks down in two ways.

First, people get indignant about justifying a request, sort of
blaming the messenger (RD) for making it harder than it "should be".
This especially happens when we (been there way too many times)
realize it is very tough to really get other people to buy into our
ideas. If you think about it, if there is no public buy-in then the
process is actually working, but break-down part is that too many
people are getting personally bent out of shape, and that's bad PR.

Second, multiple people who file a similar request have no idea who
else filed the request. Perhaps with some collaboration people
"could" justify the request. Without the ability to share notes and
build on an idea, people will back off from what would would otherwise
be really good requests. When everyone backs off the requests go
unprocessed. I vendors should tell their clients who else requested a
specific feature. If the idea has legs it will run. I think the
current thinking is that if X number of people can't even individually
come up with a good reason why a change should be made then maybe it's
better if it rots on the vine. They don't suddenly need a group of
people campaigning for what may ultimately be a bad idea anyway.

T

Lee Bacall

unread,
Feb 21, 2005, 9:32:36 AM2/21/05
to
Nick,
You can easily do this with Accuterm 2K2. It's very robust (reliable), and
priced right - 50 user site license about 1 grand US.

--
Lee Bacall
http://www.binarystar.com
Phone: +1 (954) 791-8575
Cell: +1 (954) 655-6581

"nickbro" <nicholas...@yahoo.com> wrote in message
news:1107444585.7...@l41g2000cwc.googlegroups.com...

> I am looking for a way to export data from a PICK D3 database running
> on a Unix server. I am currently using Wintegrate terminal emulation

Brian Speirs

unread,
Feb 23, 2005, 3:22:10 PM2/23/05
to

Yet another means of exporting to Excel ...

I have just posted a utility (IA Reformat) to picksource (see General
PickBasic downloads) that converts an Info/Access report to HTML. You
have the option of viewing this either as a web page or as an Excel
spreadsheet.

The utility can also format the output for use with RPV Reports
(www.rpvreport.com).

These options are essentially aimed at getting a graphical report from
Info/Access rather than converting a whole file (but I've got a
utility for that too - I'll post that to picksource in the next few
days).

These utilities are written for mvBASE, and may need modification to
work with other mv flavours.

Drop me a line if you have any questions or suggestions for
improvment.

Cheers,

Brian Speirs
brian at rushflat dot co dot nz

On 3 Feb 2005 07:29:45 -0800, "nickbro" <nicholas...@yahoo.com>
wrote:

0 new messages