12-06-2007
Hi Porter,
Thank you for your help. Not sure I understand your question.. below is the .ksh. This works fine and produces the email, data in correct column. Just trying now to pretty it up and give the .xls sheet a header.
#!/bin/ksh
REPORT_FILE="QrtlyDBUsers.xls"
sqlplus -s <<eoj >>$LOG 2>&1
${USER}/${PASSWORD}@${SID}
set serveroutput on size 1000000
set timing off
set feedback off
WHENEVER sqlerror EXIT failure
WHENEVER oserror EXIT failure
SET termout OFF
SET pagesize 1000
SET linesize 1600
prompt $REPORT_FILE
spool $REPORT_FILE
set trims on
set feed off markup html on spool on
COLUMN username heading "USERNAME" format a25;
COLUMN account_status heading "ACCT_STATUS" format a25;
COLUMN lock_date heading "LOCK_DT" format a25;
COLUMN expiry_date heading "EXPIRY_DT" format a25;
COLUMN created heading "CREATED" format a25;
COLUMN profile heading "PROFILE" format a25;
COLUMN sidba heading "SIDBA" format a25;
--COLUMN expctd_prof heading "EXPCTD_PROFILE" format a25;
COLUMN remarks heading "REMARKS" format a25;
--NEW USERS
SELECT s.username, s.account_status, s.lock_date, s.expiry_date, s.created,s.profile, s.sidba, 'NEW' REMARKS
FROM sidba_users s
WHERE
s.created >=(trunc(sysdate)-90)
and
s.account_status= 'OPEN';
set markup html off spool off
exit;
eoj
unix2dos $REPORT_FILE | uuencode $REPORT_FILE $REPORT_FILE | mailx -s "Qtrly DB Reports" $Mail_list
Tish
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi All,
I am new to unix Shell scripting
Actually i need to write a shell script to insert data from a dat file to ms-Excel file
The data in the dat file will be like this
Col1 Col2 Col3 Col4
and and
Col5
I a new... (1 Reply)
Discussion started by: kreddy2003
1 Replies
2. Shell Programming and Scripting
Hi
I need to do some thing like "find and insert before that " in a file which contains many records. This will be clear with the following example.
The original data record should be some thing like this
60119827 RTMS_LOCATION_CDR INSTANT_POSITION_QUERY 1236574686123083rtmssrv7 ... (8 Replies)
Discussion started by: aemunathan
8 Replies
3. Shell Programming and Scripting
Can anyone help.
I have sql to CSV showing header with ALIAS names but I want to generate CSV file with user friendly name i.e from AIAN8 to Adress Book Number etc.
SELECT AIAN8 || , || F0101.ABALPH || , || AICO ||
showing following below in CSV output intead of above
Address... (4 Replies)
Discussion started by: s1a2m3
4 Replies
4. UNIX for Dummies Questions & Answers
So, I have a massive file with thousands of columns
I want a list of the headers in one column in another file.
So I need to strip off the top line (can use head-1)
But how can I convert from this format:
A B C D E F G
to
A
B
C
D
E
F
G (6 Replies)
Discussion started by: polly_falconer
6 Replies
5. Shell Programming and Scripting
Here is the csv file file i have:
ServerName, IPAddress, Gateway, Notes
ServerA, 192.168.1.100, 192.168.1.1, This is some server
ServerB, 192.168.1.110, 192.168.1.1, This is some other server
ServerC, 192.168.1.120, 192.168.1.1, This is some other other server
I would like to have the... (6 Replies)
Discussion started by: Ikon
6 Replies
6. UNIX for Dummies Questions & Answers
Friends,
I need help with the following in UNIX.
Merge all csv files in one folder considering only 1 header row and ignoring header of all other files.
FYI - All files are in same format and contains same headers.
Thank you (4 Replies)
Discussion started by: Shiny_Roy
4 Replies
7. Shell Programming and Scripting
Hi,
I have an input like this
1 2 3 4
2 3 4 5
4 5 6 7
I would like to count the no. of columns and print a header with a prefix "Col".
I would also like to count the no. of rows and print as first column with each line number with a prefix "Row"
So, my output would be
... (2 Replies)
Discussion started by: jacobs.smith
2 Replies
8. Shell Programming and Scripting
Hi,
So I am trying to print the first row(header) first column alongwith the matched value. But I am not sure how do I print the same, by matching a pattern located in the file
eg
File contents
Name Place
Jim NY
Jill NJ
Cathy CA
Sam TX
Daniel FL
And what I want is... (2 Replies)
Discussion started by: sidnow
2 Replies
9. Shell Programming and Scripting
I am just trying to insert the word "Index" using awk. The below is close but seems to add the word at the end and I can not get the syntax correct to add from the beginning. Thank you :).
awk -F'\t' -v OFS='\t' '{ $-1=$-1 OFS "Index"}$1=$1' file
current output
Chr Start End ... (3 Replies)
Discussion started by: cmccabe
3 Replies
10. Shell Programming and Scripting
How to insert header with underline
AM able to insert only header not underline
sed '1i NAME COUNTRY' test.txt
input file
UK 1234
USA 2354
AUS 2253
IND 4256
Output file
NAME COUNTRY_CODE
---- ------------
UK 1234
USA 2354
AUS 2253
IND 4256 (5 Replies)
Discussion started by: Kalia
5 Replies
LEARN ABOUT DEBIAN
dbd::excel
Excel(3pm) User Contributed Perl Documentation Excel(3pm)
NAME
DBD::Excel - A class for DBI drivers that act on Excel File.
This is still alpha version.
SYNOPSIS
use DBI;
$hDb = DBI->connect("DBI:Excel:file=test.xls")
or die "Cannot connect: " . $DBI::errstr;
$hSt = $hDb->prepare("CREATE TABLE a (id INTEGER, name CHAR(10))")
or die "Cannot prepare: " . $hDb->errstr();
$hSt->execute() or die "Cannot execute: " . $hSt->errstr();
$hSt->finish();
$hDb->disconnect();
DESCRIPTION
This is still alpha version.
The DBD::Excel module is a DBI driver. The module is based on these modules:
* Spreadsheet::ParseExcel
reads Excel files.
* Spreadsheet::WriteExcel
writes Excel files.
* SQL::Statement
a simple SQL engine.
* DBI
Of course. :-)
This module assumes TABLE = Worksheet. The contents of first row of each worksheet as column name.
Adding that, this module accept temporary table definition at "connect" method with "xl_vtbl".
ex.
my $hDb = DBI->connect(
"DBI:Excel:file=dbdtest.xls", undef, undef,
{xl_vtbl =>
{TESTV =>
{
sheetName => 'TEST_V',
ttlRow => 5,
startCol => 1,
colCnt => 4,
datRow => 6,
datLmt => 4,
}
}
});
For more information please refer sample/tex.pl included in this distribution.
Metadata
The following attributes are handled by DBI itself and not by DBD::Excel, thus they all work like expected:
Active
ActiveKids
CachedKids
CompatMode (Not used)
InactiveDestroy
Kids
PrintError
RaiseError
Warn (Not used)
The following DBI attributes are handled by DBD::Excel:
AutoCommit
Always on
ChopBlanks
Works
NUM_OF_FIELDS
Valid after "$hSt->execute"
NUM_OF_PARAMS
Valid after "$hSt->prepare"
NAME
Valid after "$hSt->execute"; undef for Non-Select statements.
NULLABLE
Not really working, always returns an array ref of one's. Valid after "$hSt->execute"; undef for Non-Select statements.
These attributes and methods are not supported:
bind_param_inout
CursorName
LongReadLen
LongTruncOk
Additional to the DBI attributes, you can use the following dbh attribute:
xl_fmt
This attribute is used for setting the formatter class for parsing.
xl_dir
This attribute is used only with "data_sources" on setting the directory where Excel files ('*.xls') are searched. It defaults to the
current directory (".").
xl_vtbl
assumes specified area as a table. See sample/tex.pl.
xl_skiphidden
skip hidden rows(=row height is 0) and hidden columns(=column width is 0). See sample/thidden.pl.
xl_ignorecase
set casesensitive or not about table name and columns. Default is sensitive (maybe as SQL::Statement). See sample/thidden.pl.
Driver private methods
data_sources
The "data_sources" method returns a list of '*.xls' files of the current directory in the form "DBI:Excel:xl_dir=$dirname".
If you want to read the subdirectories of another directory, use
my($hDr) = DBI->install_driver("Excel");
my(@list) = $hDr->data_sources(
{ xl_dir => '/usr/local/xl_data' } );
list_tables
This method returns a list of sheet names contained in the $hDb->{file}. Example:
my $hDb = DBI->connect("DBI:Excel:file=test.xls");
my @list = $hDb->func('list_tables');
TODO
More tests
First of all...
Type and Format
The current version not support date/time and text formating.
Joins
The current version of the module works with single table SELECT's only, although the basic design of the SQL::Statement module allows
joins and the likes.
KNOWN BUGS
o There are too many TODO things. So I can't determind what is BUG. :-)
AUTHOR
Kawai Takanori (Hippo2000) kwitknr@cpan.org
Homepage:
http://member.nifty.ne.jp/hippo2000/ (Japanese)
http://member.nifty.ne.jp/hippo2000/index_e.htm (English)
Wiki:
http://www.hippo2000.net/cgi-bin/KbWiki/KbWiki.pl (Japanese)
http://www.hippo2000.net/cgi-bin/KbWikiE/KbWiki.pl (English)
SEE ALSO
DBI, Spreadsheet::WriteExcel, Spreadsheet::ParseExcel, SQL::Statement
COPYRIGHT
Copyright (c) 2001 KAWAI,Takanori All rights reserved.
You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the Perl README file.
perl v5.8.8 2008-03-01 Excel(3pm)