94e7dd926459ef19cc367df1a6791302bb6cbb1e
[freeside.git] / httemplate / misc / cust_pkg-import.html
1 <% include("/elements/header.html",'Batch Package Import') %>
2
3 Import a file containing package records.
4 <BR><BR>
5
6 <& /elements/form-file_upload.html,
7      'name'      => 'PackageImportForm',
8      'action'    => 'process/cust_pkg-import.html',
9      'num_files' => 1,
10      'fields'    => [ 'agentnum', 'pkgbatch', 'format' ],
11      'message'   => 'Package import successful',
12      'url'       => $p."search/cust_pkg.cgi?pkgbatch=$pkgbatch",
13      'onsubmit'  => "document.PackageImportForm.submitButton.disabled=true;"
14 &>
15
16 <% &ntable("#cccccc", 2) %>
17
18   <% include( '/elements/tr-select-agent.html',
19                  #'curr_value' => '', #$agentnum,
20                  'label'       => "<B>Agent</B>",
21                  'empty_label' => 'Select agent',
22              )
23   %>
24
25   <INPUT TYPE="hidden" NAME="pkgbatch" VALUE="<% $pkgbatch %>"%>
26
27   <TR>
28     <TH ALIGN="right">Format</TH>
29     <TD>
30       <SELECT NAME="format">
31         <OPTION VALUE="default" SELECTED>Default
32         <OPTION VALUE="default-agent_custid">Default with agent_custid
33         <OPTION VALUE="svc_acct">Account service
34         <OPTION VALUE="svc_acct-agent_custid">Account service with agent_custid
35         <OPTION VALUE="svc_phone">Phone service
36         <OPTION VALUE="svc_phone-agent_custid">Phone service with agent_custid
37         <OPTION VALUE="svc_external">External service
38         <OPTION VALUE="svc_external-agent_custid">External service with agent_custid
39         <OPTION VALUE="location">Location
40         <OPTION VALUE="location-agent_custid">Location with agent_custid
41         <OPTION VALUE="location-agent_custid-agent_pkgid">Location with agent_custid and agent_pkgid
42       </SELECT>
43     </TD>
44   </TR>
45
46   <% include( '/elements/file-upload.html',
47                 'field' => 'file',
48                 'label' => 'Filename',
49             )
50   %>
51
52   <TR>
53     <TD COLSPAN=2 ALIGN="center" STYLE="padding-top:6px">
54       <INPUT TYPE    = "submit"
55              NAME    = "submitButton"
56              ID      = "submitButton"
57              VALUE   = "Import file"
58       >
59     </TD>
60   </TR>
61
62 </TABLE>
63
64 </FORM>
65
66 <BR>
67 Uploaded files can be CSV (comma-separated value) files or Excel spreadsheets.  The file should have a .CSV or .XLS extension.
68 <BR><BR>
69
70 <b>Default</b> format has the following field order: <i>custnum<%$req%>, pkgpart<%$req%>, discountnum, start_date, setup, bill, last_bill, susp, adjourn, cancel, expire</i>
71 <BR><BR>
72
73 <b>Default with agent_custid</b> format has the following field order: <i>agent_custid<%$req%>, pkgpart<%$req%>, discountnum, start_date, setup, bill, last_bill, susp, adjourn, cancel, expire</i>
74 <BR><BR>
75
76 <b>Account service</b> format has the following field order: <i>custnum<%$req%>, pkgpart<%$req%>, discountnum, start_date, setup, bill, last_bill, susp, adjourn, cancel, expire, username, _password, domsvc</i>
77 <BR><BR>
78
79 <b>Account service with agent_custid</b> format has the following field order: <i>agent_custid<%$req%>, pkgpart<%$req%>, discountnum, start_date, setup, bill, last_bill, susp, adjourn, cancel, expire, username, _password, domsvc</i>
80 <BR><BR>
81
82 <b>Phone sevice</b> format has the following field order: <i>custnum<%$req%>, pkgpart<%$req%>, discountnum, start_date, setup, bill, last_bill, susp, adjourn, cancel, expire, countrycode, phonenum, sip_password, pin</i>
83 <BR><BR>
84
85 <b>Phone service with agent_custid</b> format has the following field order: <i>agent_custid<%$req%>, pkgpart<%$req%>, discountnum, start_date, setup, bill, last_bill, susp, adjourn, cancel, expire, countrycode, phonenum, sip_password, pin</i>
86 <BR><BR>
87
88 <b>External sevice</b> format has the following field order: <i>custnum<%$req%>, pkgpart<%$req%>, discountnum, start_date, setup, bill, last_bill, susp, adjourn, cancel, expire, id, title</i>
89 <BR><BR>
90
91 <b>External service with agent_custid</b> format has the following field order: <i>agent_custid<%$req%>, pkgpart<%$req%>, discountnum, start_date, setup, bill, last_bill, susp, adjourn, cancel, expire, id, title</i>
92 <BR><BR>
93
94 <b>Location</b> format has the following field order: <i>custnum<%$req%>,
95 pkgpart<%$req%>, discountnum,
96 start_date, setup, bill, last_bill, susp, adjourn, cancel, expire,
97 address1<%$req%>, address2, city<%$req%>, state<%$req%>, zip<%$req%>, country<%$req%>
98 </i>
99 <BR><BR>
100
101 <b>Location with agent_custid</b> format has the following field order: <i>agent_custid<%$req%>,
102 pkgpart<%$req%>, discountnum,
103 start_date, setup, bill, last_bill, susp, adjourn, cancel, expire,
104 address1<%$req%>, address2, city<%$req%>, state<%$req%>, zip<%$req%>, country<%$req%>
105 </i>
106 <BR><BR>
107
108 <b>Location with agent_custid and agent_pkgid</b> format has the following field order: <i>agent_custid<%$req%>, agent_pkgid,
109 pkgpart<%$req%>, discountnum,
110 start_date, setup, bill, last_bill, susp, adjourn, cancel, expire,
111 address1<%$req%>, address2, city<%$req%>, state<%$req%>, zip<%$req%>, country<%$req%>
112 </i>
113 <BR><BR>
114
115 <%$req%> Required fields
116 <BR><BR>
117
118 Field information:
119
120 <ul>
121
122   <li><i>custnum</i>: This specifies an existing customer by custnum.
123
124   <li><i>agent_custid</i>: This specifies an existing customer record by agent_custid.
125
126   <li><i>agent_pkgid</i>: This specifies an existing customer record by agent_custid.
127
128   <li><i>pkgpart</i>: Package definition.  Configuration -&gt; Packages -&gt; Package definitions
129
130   <li><i>discountnum</i>: Optional discount.  Configuration -&gt; Packages -&gt; Discounts
131
132   <li><i>start_date</i>: Indicates a future start date; do not fill in for active packages
133
134   <li><i>setup</i>: Indicates setup fee has been charged and package setup on this date
135
136   <li><i>bill</i>: Next bill date
137
138   <li><i>last_bill</i>: Last bill date
139
140   <li><i>susp</i>: Indicates the package is suspended (on the given date).
141
142   <li><i>adjourn</i>: Indicates a future suspension on this date.
143
144   <li><i>cancel</i>: Indicates the package is cancelled (on the given date).
145
146   <li><i>expire</i>: Indicates a future cancellation on this date.
147
148 <!--
149   <li><i>username</i> and <i>_password</i> are required if <i>pkgpart</i> is specified. (Extended and Extended plus company formats)
150 -->
151
152   <li><i>domsvc</i>: Domain svcnum
153
154   <li><i>id</i>: External service id, integer
155
156   <li><i>title</i>: External service identifier, text
157
158   <li><i>address1</i>: Service address, number and street, text
159
160   <li><i>address2</i>: Service address, suite/unit/building identifier, text
161
162   <li><i>city</i>: Service address, name of city, text
163
164   <li><i>state</i>: Service address, state/province, abbreviated
165
166   <li><i>zip</i>: Service address, postal code
167
168   <li><i>country</i>: Service address, country, 2-letter code
169
170 </ul>
171
172 <BR>
173
174 <% include('/elements/footer.html') %>
175
176 <%once>
177
178 my $req = qq!<font color="#ff0000">*</font>!;
179
180 </%once>
181 <%init>
182
183 die "access denied"
184   unless $FS::CurrentUser::CurrentUser->access_right('Import');
185
186 my $pkgbatch = time2str('webimport-%Y/%m/%d-%T'. "-$$-". rand() * 2**32, time);
187
188 </%init>