- web interface for hourly account charges!
[freeside.git] / httemplate / docs / man / FS / part_pkg.html
1 <HTML>
2 <HEAD>
3 <TITLE>FS::part_pkg - Object methods for part_pkg objects</TITLE>
4 <LINK REV="made" HREF="mailto:perl@packages.debian.org">
5 </HEAD>
6
7 <BODY>
8
9 <A NAME="__index__"></A>
10 <!-- INDEX BEGIN -->
11
12 <UL>
13
14         <LI><A HREF="#name">NAME</A></LI>
15         <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
16         <LI><A HREF="#description">DESCRIPTION</A></LI>
17         <LI><A HREF="#methods">METHODS</A></LI>
18         <LI><A HREF="#version">VERSION</A></LI>
19         <LI><A HREF="#bugs">BUGS</A></LI>
20         <LI><A HREF="#see also">SEE ALSO</A></LI>
21 </UL>
22 <!-- INDEX END -->
23
24 <HR>
25 <P>
26 <H1><A NAME="name">NAME</A></H1>
27 <P>FS::part_pkg - Object methods for part_pkg objects</P>
28 <P>
29 <HR>
30 <H1><A NAME="synopsis">SYNOPSIS</A></H1>
31 <PRE>
32   use FS::part_pkg;</PRE>
33 <PRE>
34   $record = new FS::part_pkg \%hash
35   $record = new FS::part_pkg { 'column' =&gt; 'value' };</PRE>
36 <PRE>
37   $custom_record = $template_record-&gt;clone;</PRE>
38 <PRE>
39   $error = $record-&gt;insert;</PRE>
40 <PRE>
41   $error = $new_record-&gt;replace($old_record);</PRE>
42 <PRE>
43   $error = $record-&gt;delete;</PRE>
44 <PRE>
45   $error = $record-&gt;check;</PRE>
46 <PRE>
47   @pkg_svc = $record-&gt;pkg_svc;</PRE>
48 <PRE>
49   $svcnum = $record-&gt;svcpart;
50   $svcnum = $record-&gt;svcpart( 'svc_acct' );</PRE>
51 <P>
52 <HR>
53 <H1><A NAME="description">DESCRIPTION</A></H1>
54 <P>An FS::part_pkg object represents a billing item definition.  FS::part_pkg
55 inherits from FS::Record.  The following fields are currently supported:</P>
56 <DL>
57 <DT><STRONG><A NAME="item_key">pkgpart - primary key (assigned automatically for new billing item definitions)</A></STRONG><BR>
58 <DD>
59 <DT><STRONG><A NAME="item_definition">pkg - Text name of this billing item definition (customer-viewable)</A></STRONG><BR>
60 <DD>
61 <DT><STRONG>comment - Text name of this billing item definition (non-customer-viewable)</STRONG><BR>
62 <DD>
63 <DT><STRONG><A NAME="item_setup_%2D_Setup_fee_expression">setup - Setup fee expression</A></STRONG><BR>
64 <DD>
65 <DT><STRONG><A NAME="item_freq_%2D_Frequency_of_recurring_fee">freq - Frequency of recurring fee</A></STRONG><BR>
66 <DD>
67 <DT><STRONG><A NAME="item_recur_%2D_Recurring_fee_expression">recur - Recurring fee expression</A></STRONG><BR>
68 <DD>
69 <DT><STRONG><A NAME="item_setuptax_%2D_Setup_fee_tax_exempt_flag%2C_empty_or">setuptax - Setup fee tax exempt flag, empty or `Y'</A></STRONG><BR>
70 <DD>
71 <DT><STRONG><A NAME="item_recurtax_%2D_Recurring_fee_tax_exempt_flag%2C_empt">recurtax - Recurring fee tax exempt flag, empty or `Y'</A></STRONG><BR>
72 <DD>
73 <DT><STRONG><A NAME="item_plan_%2D_Price_plan">plan - Price plan</A></STRONG><BR>
74 <DD>
75 <DT><STRONG><A NAME="item_plandata_%2D_Price_plan_data">plandata - Price plan data</A></STRONG><BR>
76 <DD>
77 <DT><STRONG><A NAME="item_disabled_%2D_Disabled_flag%2C_empty_or_%60Y%27">disabled - Disabled flag, empty or `Y'</A></STRONG><BR>
78 <DD>
79 </DL>
80 <P>setup and recur are evaluated as Safe perl expressions.  You can use numbers
81 just as you would normally.  More advanced semantics are not yet defined.</P>
82 <P>
83 <HR>
84 <H1><A NAME="methods">METHODS</A></H1>
85 <DL>
86 <DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
87 <DD>
88 Creates a new billing item definition.  To add the billing item definition to
89 the database, see <A HREF="#insert">insert</A>.
90 <P></P>
91 <DT><STRONG><A NAME="item_clone">clone</A></STRONG><BR>
92 <DD>
93 An alternate constructor.  Creates a new billing item definition by duplicating
94 an existing definition.  A new pkgpart is assigned and `(CUSTOM) ' is prepended
95 to the comment field.  To add the billing item definition to the database, see
96 <A HREF="#insert">insert</A>.
97 <P></P>
98 <DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
99 <DD>
100 Adds this billing item definition to the database.  If there is an error,
101 returns the error, otherwise returns false.
102 <P></P>
103 <DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
104 <DD>
105 Currently unimplemented.
106 <P></P>
107 <DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
108 <DD>
109 Replaces OLD_RECORD with this one in the database.  If there is an error,
110 returns the error, otherwise returns false.
111 <P></P>
112 <DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
113 <DD>
114 Checks all fields to make sure this is a valid billing item definition.  If
115 there is an error, returns the error, otherwise returns false.  Called by the
116 insert and replace methods.
117 <P></P>
118 <DT><STRONG><A NAME="item_pkg_svc">pkg_svc</A></STRONG><BR>
119 <DD>
120 Returns all FS::pkg_svc objects (see <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>) for this package
121 definition (with non-zero quantity).
122 <P></P>
123 <DT><STRONG><A NAME="item_svcpart_%5B_SVCDB_%5D">svcpart [ SVCDB ]</A></STRONG><BR>
124 <DD>
125 Returns the svcpart of a single service definition (see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>)
126 associated with this billing item definition (see <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>).  Returns
127 false if there not exactly one service definition with quantity 1, or if 
128 SVCDB is specified and does not match the svcdb of the service definition,
129 <P></P></DL>
130 <P>
131 <HR>
132 <H1><A NAME="version">VERSION</A></H1>
133 <P>$Id: part_pkg.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
134 <P>
135 <HR>
136 <H1><A NAME="bugs">BUGS</A></H1>
137 <P>The delete method is unimplemented.</P>
138 <P>setup and recur semantics are not yet defined (and are implemented in
139 FS::cust_bill.  hmm.).</P>
140 <P>
141 <HR>
142 <H1><A NAME="see also">SEE ALSO</A></H1>
143 <P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, <A HREF=".././FS/type_pkgs.html">the FS::type_pkgs manpage</A>, <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>, <EM>Safe</EM>.
144 schema.html from the base documentation.</P>
145
146 </BODY>
147
148 </HTML>