'quantity', 'int', 'NULL', '', '', '',
'unitsetup', @money_typen, '', '',
'unitrecur', @money_typen, '', '',
- 'duplicate', 'char', 'NULL', 1, '', '',
- 'post_total', 'char', 'NULL', 1, '', '',
- 'type', 'char', 'NULL', 1, '', '',
],
'primary_key' => 'billpkgnum',
'unique' => [],
'index' => [ [ 'billpkgnum' ], [ 'pkgnum', 'invnum' ] ],
},
+ #instead of 'duplicate', 'char', 'NULL', 1, '', '',
+ # that way we keep display vs *TOTALLY* out of the table for actual
+ # finanancial line items
+ 'cust_bill_pkg_display' => {
+ 'columns' => [
+ 'billpkgdisplaynum', 'serial', '', '', '', '',
+ 'billpkgnum', 'int', '', '', '', '',
+ 'section', 'varchar', 'NULL', $char_d, '', '',
+ #override the linked real one?#'unitsetup', @money_typen, '', '',
+ #this too?#'unitrecur', @money_typen, '', '',
+ 'post_total', 'char', 'NULL', 1, '', '',
+ 'type', 'char', 'NULL', 1, '', '',
+ #any other fields we need to control this display-only line item...
+ ],
+ 'primary_key' => 'billpkgdisplaynum',
+ 'unique' => [],
+ 'index' => [ ['billpkgnum'], ],
+ },
+
+ #and this, to break down a line item into slices for taxation purposes
+ #(instead of creating usage line items for each usage class)
+ 'cust_bill_pkg_slice' => {
+ 'columns' => [
+ 'slicenum', 'serial', '', '', '', '',
+ 'billpkgnum', 'int', '', '', '', '',
+ 'amount', @money_typen, '', '',
+ 'classnum', 'int', '', '', '', '',
+ ],
+ 'primary_key' => 'slicenum',
+ 'unique' => [],
+ 'index' => [ [ 'billpkgnum' ], [ 'classnum' ], ],
+ },
+
'cust_credit' => {
'columns' => [
'crednum', 'serial', '', '', '', '',
'index' => [ [ 'pkgnum' ], [ 'optionname' ] ],
},
+ 'cust_pkg_detail' => {
+ 'columns' => [
+ 'pkgdetailnum', 'serial', '', '', '', '',
+ 'pkgnum', 'int', '', '', '', '',
+ 'detail', 'varchar', '', $char_d, '', '',
+ 'detailtype', 'char', '', 1, '', '', # "I"nvoice or "C"omment
+ 'weight', 'int', '', '', '', '',
+ ],
+ 'primary_key' => 'pkgdetailnum',
+ 'unique' => [],
+ 'index' => [ [ 'pkgnum', 'detailtype' ] ],
+ },
+
'cust_pkg_reason' => {
'columns' => [
'num', 'serial', '', '', '', '',
],
'primary_key' => 'num',
'unique' => [],
- 'index' => [],
+ 'index' => [ [ 'pkgnum' ], [ 'reasonnum' ], ['action'], ],
},
'cust_refund' => {
#NULL, done (or something)
'freesidestatus', 'varchar', 'NULL', 32, '', '',
+ 'cdrbatch', 'varchar', 'NULL', $char_d, '', '',
+
],
'primary_key' => 'acctid',
'unique' => [],
- 'index' => [ [ 'calldate' ], [ 'dst' ], [ 'accountcode' ], [ 'freesidestatus' ] ],
+ 'index' => [ [ 'calldate' ], [ 'dst' ], [ 'accountcode' ], [ 'freesidestatus' ], [ 'cdrbatch' ], ],
},
'cdr_calltype' => {