Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SQLite::Work::Mail(3) User Contributed Perl DocumentationSQLite::Work::Mail(3)

NAME
       SQLite::Work::Mail - send mail with data	from an	SQLite table.

VERSION
       version 0.1601

SYNOPSIS
	   use SQLite::Work::Mail;

	   my $obj = SQLite::Work::Mail->new(%args);

	   $obj->send_mail(%args);

DESCRIPTION
       This module is an expansion of SQLite::Work used	for sending email
       populated by row(s) from	a table	in an SQLite database.

CLASS METHODS
   new
       my $obj = SQLite::Work::Mail->new(
	   database=>$database_file,
	   report_template=>$report_template,
	   default_format=>{	      'episodes' => {
		 'title'=>'title',	     'series_title'=>'title',
       }      },
	   },
	   );

       Make a new report object.

       Takes the same arguments	as SQLite::Work::new().

OBJECT METHODS
   send_email
       $obj->send_email();

	   $rep->send_email(
	       table=>$table,
	       where=>\%where,
	       not_where=>\%not_where,
	       subject=>'My Mail',
	       email_col=>$email_col,
	       email_address=>\@addresses,
	       mailer=>$mailer,
	       sort_by=>\@sort_by,
	       sort_reversed=>\%sort_reversed,
	       show=>\@show,
	       limit=>$limit,
	       page=>$page,
	       row_template=>$row_template,
	   );

       Select data from	a table	in the database, and send each row as a
       separate	email.

       Arguments are as	follows	(in alphabetical order):

       email_address
	   An array of email addresses to send the email to.  If this is
	   given, this will send an email for each matching row, to each
	   address in the array.  Useful for broadcast mailing.

	   Give	either this option or the 'email_col' option.

       email_col
	   The name of the column to take email	addresses from.	 If this is
	   given, then each row	is sent	to the email address value in that
	   column for that row.	 Useful	for individual notification.

	   Give	either this option or the 'email_address' option.

       limit
	   The maximum number of rows to display per page.  If this is zero,
	   then	all rows are displayed in one page.

       mailer
	   The name of the mailing program to use.  Allowable values are
	   'mutt', sendmail, mail, and elm.

       not_where
	   A hash containing the column	names where the	selection criteria in
	   where should	be negated.

       page
	   Select which	page to	generate, if limit is not zero.

       row_template
	   The template	for each row.  This uses the same format as for
	   headers.  If	none is	given, then a default row_template will	be
	   generated, depending	on which columns are going to be shown (see
	   show).

	   Therefore it	is important that if one provides a row_template, that
	   it matches the current layout.

	   The format is as follows:

	   {$colname}
	       A variable; will	display	the value of the column, or nothing if
	       that value is empty.

	   {?colname stuff [$colname] more stuff}
	       A conditional.  If the value of 'colname' is not	empty, this
	       will display "stuff value-of-column more	stuff";	otherwise it
	       displays	nothing.

		   {?col1 stuff	[$col1]	thing [$col2]}

	       This would use both the values of col1 and col2 if col1 is not
	       empty.

	   {?colname stuff [$colname] more stuff!!other	stuff}
	       A conditional with "else".  If the value	of 'colname' is	not
	       empty, this will	display	"stuff value-of-column more stuff";
	       otherwise it displays "other stuff".

	       This version can	likewise use multiple columns in its display
	       parts.

		   {?col1 stuff	[$col1]	thing [$col2]!![$col3]}

       show
	   An array of columns to select; also the order in which they should
	   be shown when a row_template	has not	been given.

       sort_by
	   An array of column names by which the result	should be sorted.

       sort_reversed
	   A hash of column names where	the sorting given in sort_by should be
	   reversed.

       subject
	   A template for the Subject: line of the emails.

       table
	   The table to	report on. (required)

       where
	   A hash containing selection criteria.  The keys are the column
	   names and the values	are strings suitable for using in a LIKE
	   condition; that is, '%' is a	multi-character	wildcard, and '_' is a
	   single-character wildcard.  All the conditions will be ANDed
	   together.

	   Yes,	this is	limited	and doesn't use	the full power of SQL, but
	   it's	useful enough for most purposes.

Private	Methods
   send_one_email
   send_the_actual_mail
REQUIRES
	   SQLite::Work
	   CGI

	   Test::More

INSTALLATION
       To install this module, run the following commands:

	   perl	Build.PL
	   ./Build
	   ./Build test
	   ./Build install

       Or, if you're on	a platform (like DOS or	Windows) that doesn't like the
       "./" notation, you can do this:

	  perl Build.PL
	  perl Build
	  perl Build test
	  perl Build install

       In order	to install somewhere other than	the default, such as in	a
       directory under your home directory, like "/home/fred/perl" go

	  perl Build.PL	--install_base /home/fred/perl

       as the first step instead.

       This will install the files underneath /home/fred/perl.

       You will	then need to make sure that you	alter the PERL5LIB variable to
       find the	modules, and the PATH variable to find the script.

       Therefore you will need to change: your path, to	include
       /home/fred/perl/script (where the script	will be)

	       PATH=/home/fred/perl/script:${PATH}

       the PERL5LIB variable to	add /home/fred/perl/lib

	       PERL5LIB=/home/fred/perl/lib:${PERL5LIB}

SEE ALSO
       perl(1).

BUGS
       Please report any bugs or feature requests to the author.

AUTHOR
	   Kathryn Andersen (RUBYKAT)
	   perlkat AT katspace dot com
	   http://www.katspace.com

COPYRIGHT AND LICENCE
       Copyright (c) 2005 by Kathryn Andersen

       This program is free software; you can redistribute it and/or modify it
       under the same terms as Perl itself.

perl v5.24.1			  2017-07-02		 SQLite::Work::Mail(3)

NAME | VERSION | SYNOPSIS | DESCRIPTION | CLASS METHODS | OBJECT METHODS | Private Methods | REQUIRES | INSTALLATION | SEE ALSO | BUGS | AUTHOR | COPYRIGHT AND LICENCE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=SQLite::Work::Mail&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help