NAME

DataFax::StudyDB - DataFax DFstudies.db parser

SYNOPSIS

use DataFax::StudyDB;

my $db = DataFax::StudyDB->new('datafax_dir'=>'/opt/datafax', 
          'datafax_host'=>'mydfsvr');
# or
my $db = new DataFax::StudyDB 'datafax_dir'=>'/opt/datafax', 
          'datafax_host'=>'mydfsvr';

DESCRIPTION

This class locates DataFax DFstudies.db, parse it and load it to a relational database such as Oracle.

new (datafax_dir=>'/opt/datafax',datafax_host=>'my_svr')

Input variables:

datafax_dir  - full path to where DataFax system is installled 
               If not specified, it will try to get it from
               $ENV{DATAFAX_DIR}.
datafax_host - DataFax server name or IP address
               If not specified, it will try to get it from
               $ENV{DATAFAX_HOST} or `hostname` on UNIX system.

Variables used or routines called:

None

How to use:

my $db = DataFax::StudyDB->new('datafax_dir'=>'/opt/datafax', 
          'datafax_host'=>'mydfsvr');
Return: an empty or initialized class object.

This method constructs a Perl object and capture any parameters if specified. It creates and defaults the following variables:

datafax_dir  = $ENV{DATAFAX_DIR}
datafax_host = $ENV{DATAFAX_HOST} | `hostname` 
unix_os      = 'linux|solaris'

Export Tag: all

The :all tag includes the all the methods in this module.

use DataFax::StudyDB qw(:all);

It includes the following sub-routines:

readDFstudies($q, $ar)

Input variables:

$ifn - input file name 
$ar  - a parameter array ref
  source_dir   - source directory
  datafax_dir  - DataFax directory
  datafax_host - DataFax server name/IP address
  real_time    - whether to ge real time data

Variables used or routines called:

DataFax::StudySubs
  get_dfparam - get parameters 
  

How to use:

my $s = new DataFax::StudyDB;
my $ifn = '/opt/datafax/lib/DFstudies.db'; 
my $pr = { real_time=>1,datafax_host=>'df_svr',
           datafax_usr=>'datafax', datafax_pwd=>'secret'}; 
my ($c, $d) = $s->readDFstudies{$ifn);
my ($c, $d) = $s->readDFstudies{"", $pr);

Return: ($c,$d) where $c is an array ref while $d is hash ref.

$c->[$i][$j] - array ref where 
     $i is row number and 
     $j is column number; 
     $i=0 - the first row contains the column names in the 
            following order
            study_number,study_title,client_name,study_dir,
            source_dir,datafax_dir,host_name,rpc_program,
            rpc_program_no,rpc_version_no,study_status,comments
$d->{$sn}{$itm} hash ref where
     $sn is three-digit study number padding with leading zeros
     $itm is column names as listed in $c->[0]. 

This method reads DFstudies and parse the file into two arrays.

HISTORY

  • Version 0.10

    This version is to create a method to read in DFstudies.db.

    0.11 - use new method from DataFax
  • Version 0.20

SEE ALSO (some of docs that I check often)

Oracle::Loader, Oracle::Trigger, CGI::Getopt, File::Xcopy, DataFax, CGI::AppBuilder, etc.

AUTHOR

Copyright (c) 2005 Hanming Tu. All rights reserved.

This package is free software and is provided "as is" without express or implied warranty. It may be used, redistributed and/or modified under the terms of the Perl Artistic License (see http://www.perl.com/perl/misc/Artistic.html)

1 POD Error

The following errors were encountered while parsing the POD:

Around line 207:

You forgot a '=back' before '=head1'