You are on page 1of 16

Sheet1

Page 1
jBilling
The Enterprise Open Source Billing System
Release Notes
Version: 2.1.0
Date: 2010-03-11
Date Change type Description
2010-03-11 Enhancement
2010-03-08 Bug i!
2010-03-0" Enhancement #hange$ $eault %atch si&e 'alue rom 1000 to 100
2010-02-01 Ne( eature )$$e$ a *DB# me$iation error han$ler
2010-01-2+ Ne( eature
2010-01-21 Bug i! ,r$er notes are trimme$ i the- are longer than 200 characters.
2010-01-21 Bug i!
2010-01-1+ Bug i! .i!e$ loa$ing rules assets/ re0lace$ custom cache (ith Drools agent.
2010-01-13 Bug i!
2010-01-13 Bug i!
2010-01-08 Buil$ 0rocess
2010-01-01 Buil$ 0rocess 20$ate$ tests to relect recent me$iation rule changes
2010-01-03 Ne( eature
200+-12-23 Buil$ 0rocess )$$e$ a 10/000 e'ent me$iation test
200+-12-23 Ne( eature
200+-12-23 Bug i!
200+-12-22 Bug i!
200+-12-11 Buil$ 0rocess Sim0liie$ the 4irst 1000 inclu$e$4 rules
200+-12-13 Enhancement
200+-12-0+ Bug i!
200+-12-01 Bug i!
200+-12-05 Bug i! .i!e$ an NPE (hen changing user 0ass(or$
200+-12-05 Bug i!
200+-12-02 Enhancement )$$e$ su00ort or DS6 in 0ro-rating calculations
200+-12-02 Buil$ 0rocess )$$e$ an e!am0le rate car$ or me$iation 0ricing.
6he %illing 0rocess an$ the 0a-ment 0rocessing $o not loc7 ro(s. 6his (as
$egra$ing 0erormance on ,racle.
Bug i!: cr-0to classes are not threa$ sae. Re0lacing singleton (ith stan$ar$
class instance.
#om0lete$ su00ort or 0lans an$ su%scri0tions or the me$iation an$ rating
0rocess.
Bug i!: a0i create in'oice call (oul$ not generate an in'oice (hen 0arent has
an or$er %ut there is a chil$ (ithout a00lica%le or$ers.
8ncrease$ P92::)B9E;6)S<;P)R)=E6ER.S6R;V)92E to "00 characters
to allo( or multi0le rules 0ac7age url>s
.i!e$ memor- usage o me$iation 0rocess: no nee$ to 7ee0 all recor$s
associate$ to the 0rocess.
#hange$ remote session %eans to use S0ring>s ?66P 8n'o7er
)$$e$ error han$ling to the me$iation 0rocess
=e$iate$ recor$s no( hol$ a status relecting the outcome o the me$iation
Selection o users to inclu$e in the %illing 0rocess is no( in a 0lug-in @ne(
categor-A. Some hel0er iel$s or Pa-ment.
No( using $igester 'ersion 1.8.1 - Sol'es issues (ith me$iation mo$ule
un$er Bin$o(s
.i!e$ %ug (here the %atch si&e (as not res0ecte$ (hen 0rocessing multi0le
iles or the me$iation 0rocess. )lso a$$e$ a guarantee that the iles are
0rocesse$ in or$er (ith ol$est irst.
)$$e$ a Su%scri0tionReCuest o%Dect to allo( or %atching o su%scri0tion
%ase$ rules
NPE in NotiicationB9 or lines (ith null 4is 0ercentage4 'alues
20$ate$ Das0er re0ort or BigDecimal
,(ing %alance shoul$ consi$er all in'oices @0ai$ an$ not 0ai$A. 8t (as
e!clu$ing 0ai$ in'oices (ith negati'e %alances.
.i!e$ %ug (here or$ers starting on the last $a- o the month an$ (ith 0ro-
rating (oul$ use (rong 0erio$s. .i!e$ se'eral issues (ith 0re'ious commit as
(ell.
Sheet1
Page 2
200+-12-01 Ne( eature
200+-11-30 Enhancement
200+-11-2" Enhancement
200+-11-25 Bug i!
200+-11-22 Bug i!
200+-11-1+ Ne( eature )00lie$ 0a-ments @cheCuesA can also %e automaticall- lin7e$ to in'oices.
200+-11-11 Bug i! =inor i! to cre$it car$s
200+-11-13 Enhancement )$$e$ metho$ name to the error message rom )P8 e!ce0tions
200+-11-13 Enhancement
200+-11-0+ Bug i!
200+-11-0+ Bug i! .i! to in'oice re0ort
200+-11-01 Enhancement
200+-11-03 Ne( eature
200+-11-03 Enhancement
200+-11-0" Ne( eature
200+-11-03 Ne( eature
200+-11-02 Ne( eature
200+-11-02 Bug i! .i!e$ %ug that 0re'ente$ setting the $eault currenc- o a customer
200+-11-01 Ne( eature
200+-10-2+ Ne( eature
200+-10-28 Bug i! .i!e$ connection lea7: :28 customer screen
200+-10-28 Bug i!
200+-10-25 Ne( eature ?igh 0erormance me$iation 0rocess.
200+-10-25 Buil$ 0rocess 20gra$e o $e0en$encies Dars.
200+-10-23 Enhancement
200+-10-23 Bug i!
200+-10-21 Ne( eature
200+-10-20 Enhancement
200+-10-20 Buil$ 0rocess
200+-10-1+ Ne( eature ?igh 0erormance rules 0rocessing: 0ricing
200+-10-1+ Enhancement
200+-10-13 Ne( eature
200+-10-1" Bug i!
200+-10-15 Ne( eature Su00ort or storing cre$it car$ inormation e!ternall-.
200+-10-13 Bug i! 6he ilter 0rocessor @%lac7 listA shoul$ not trigger >una'aila%le> e'ents.
6he me$iation 0rocess ta7es a %atch o recor$s or rules 0rocessing/ instea$ o
one at a time. )lso a$$e$ a cache or etching the current or$er.
Re0lace$ all loatsE$ou%les (ith BigDecimal
=inor im0ro'ements to Pricing.iel$ @si&e F s0ee$A.
Restore$ triggering o Ne(Guantit-E'ents %- me$iation 0rocess an$
u0$ate#urrent,r$er )P8 metho$.
=inor i! to u0$ate#urrent,r$er )P8 metho$: or$er lines create$ %- the
me$iation 0rocess use the e'ent $ate 0asse$ %- the client/ instea$ o using
>no(>.
Pricing.iel$ is %ac7e$ %- a single String.
.i!e$ currenc- han$ling o get8tem )P8 metho$
=o'e$ logging an$ e!ce0tion han$ling or the )P8 to ),P. #leane$ u0 some
ol$ NamingE!ce0tions.
)$$e$ rate,r$ers )P8 metho$
#hanges all Vectors to 9istE)rra-9ist
'ali$atePurchase )P8 metho$s return a >success> 'alue o >alse> i the
me$iation rules thro( an e!ce0tion.
6he me$iation 0lug-in ta7es an arra- o results as 0arameter/ to allo( callers to
s0eci- 7no(n iel$s such as the user i$ or the $ate.
)uto-recharge eature: (hen the 0re0ai$ %alance goes %elo( a threshol$/ it
triggers an automatic 0a-ment.
D-namic %alance no( ta7es into account 0ro-rating (hen or$ers are a$$e$ to
an in'oice.
Borl$Pa- 0lug-ins or %oth stan$ar$ an$ e!ternal cre$it car$ 0rocessing.
.i! to items screen/ 0ro%lem intro$uce$ in recent loat to %ig$ecimal
con'ersion
)$$e$ 0a-ment8$ to the Pa-ment)uthori&ationD6, returne$ %- the )P8.
.i! to 0rocessPa-ment )P8 metho$: Pa-ment)uthori&ationD6, i$ is no(
returne$ correctl-.
Ne( )P8 metho$ get2ser8n'oicesB-Date: returns in'oice i$s or the user or
the gi'en $ate range.
.ile8n'oiceE!0ort6as7 can no( ta7e a relati'e ilename rom the
>D%illingEresources> $irector-.
e!0ort> ant tas7 no( inclu$es *as0erSer'er (e%a00. Dum0 *as0erSer'er
$ata%ase to >D%illingEsrcEre0orts.sCl> %eore running.
#on'ersions rom .loat to BigDecimal
)P8 metho$ 0rocessPa-ment $oes not reCuire a cre$it car$. 8 it is not 0resent/
it (ill etch the one on ile or the customer.
.i! or creating or$ers through the )P8: 6he language o the customer o the
or$er is no( use$ or or$er line item $escri0tions.
Sheet1
Page 3
200+-10-12 Buil$ 0rocess
200+-10-12 Bug i!
200+-10-0+ Bug i!
200+-10-0+ Bug i!
200+-10-01 Ne( eature Ne( )P8 metho$s: get items %- categor- an$ get all categories.
200+-10-03 Ne( eature
200+-10-01 Ne( eature
200+-0+-25 Ne( eature Ne( 0a-ment 0rocessor 0lug-in: Pa-ments :ate(a- E )#? Pa-ments
200+-0+-23 Bug i!
200+-0+-23 Ne( eature
200+-0+-11 Ne( eature
200+-0+-13 Ne( eature
200+-0+-11 Buil$ 0rocess
200+-0+-0+ Enhancement
200+-0+-01 Ne( eature
200+-08-31 Buil$ 0rocess
200+-08-21 Ne( eature
200+-08-2" Buil$ 0rocess #hanges in %uil$ to 0ac7age or tomcat @2.0.0 releaseA
200+-08-2" Enhancement
200+-08-2" Ne( eature
200+-08-23 Enhancement
200+-08-11 Bug i!
200+-08-13 Bug i! .i!e$ DB connections lea7 in the or$er e!0iration notiication 0rocess.
200+-08-12 Ne( eature
Version: 2.0.1
Date: 200+-11-11
Re'isions inclu$e$: rom 313 to 138 @su00ort %ranch onl-A
#oniguration change or R=8 to 0re'ent errors (hen the a00lication is
restarte$.
#asca$es the loc7s to the or$er lines. Nee$e$ to a'oi$ o0timistic loc7s errors
(hen the 0ro'isioning mo$ule is acti'e.
.i!e$ minor %ug in in$8$sB-2ser)n$8tem6-0e9atest.irst Cuer-
.i! to me$iation Se0arator.ileRea$er: 0re'ent trailing em0t- iel$s rom %eing
$iscar$e$.
Penalt- tas7 no( 0art o the ageing 0rocess. )$$e$ :28 su00ort to the ne(
in'oice status.
#hanges to 0reser'e the %alance o carrie$ o'er %alance. 8nclu$es a ne(
status or in'oices: >carrie$ o'er>.
.i!e$ %ug (here language8$ (asn>t %eing sa'e$ to the $ata%ase or users
create$ through the )P8.
Ne( 'ali$ate=ultiPurchase )P8 metho$. )llo(s multi0le items an$Eor grou0s o
0ricing iel$s to %e 'ali$ate$ in one call.
D-namic %alance 'ali$ation an$ mo$iication no( (or7 (ith customer
hierarchies.
6he user aecte$ %- an e'ent is no( sa'e$ %- the e'ent logger. #ustomer
relate$ e'ent logs are no( e!0ose$ to the :28.
)$$ition to D%illing Dars to image an$ e!0ort targets
20$ate$ 'ali$atePurchase rules to run (hen no 0re'ious item has %een
or$ere$. 2serBalanceVali$atePurchase6as7 can han$le items 0rice$ at &ero
graceull-.
'ali$atePurchase )P8 metho$ no( runs 0lugga%le tas7s. Ne(
RulesVali$atePurchase6as7. .i!e$ %ug in securit- chec7s or
u0$ate#urrent,r$er an$ get#urrent,r$er )P8 metho$s.
Ne( >e!0ort> ant tas7 that 0ac7ages DBilling rea$- to %e un&i00e$ into resh
6omcat installations. Dum0 the current $ata%ase to >D%illingEsrcE$ata.sCl> %eore
running.
6he main or$er is 0asse$ (ith 2serBS in the )P8 an$ it is also u0$ate$ i it is
0asse$ (hen calling u0$ate2ser
=a$e 0ricing rules hel0er o%Dect more accessi%le @nee$e$ or $rools gu'nor
em%e$$e$ $ecision ta%lesA.
Borl$Pa- 0a-ment 0rocessor 0lug-in
)P8: u0$ate#urrent,r$er an$ 'ali$atePurchase metho$s no( run the
me$iation rules i not item8$ is 0asse$. Rules e!ecute$ %- RulesPricing6as7
no( ha'e access to Su%scri0tion ino.
.i!es to (e% ser'ices (hen using #H.. Ne( H=9 to orce SS9 connections in
(e%!ml
Pa-ments 0rocesse$ (ithout an in'oice can no( search or un0ai$ in'oice an$
0a- them @i the %illing 0rocess coniguration has auto-0a-ment setA.
Sheet1
Page 5
Revision Change type Description
131/138 Bug i!
123 Bug i! .i!e$ connection lea7: :28 customer screen.
3++ Bug i!
3+3 Bug i! 6he ilter 0rocessor @%lac7 listA shoul$ not trigger >una'aila%le> e'ents.
38+ Bug i!
318 Bug i!
Version: 2.0.0
Date: 200+-08-01
Re'isions inclu$e$: rom "32 to 3"1
Revision Change type Description
3"1 Bug i! .i!e$ manual cre$it car$ 0artner 0a-outs.
3"3 Enhancement
3"2 Ne( eature
3"1 Enhancement
35+/3"0 Ne( eature
351 Buil$ 0rocess Entit- creation: #an reresh the ta%les e'en i one ails.
351/352 Enhancement #onnection 0ooling (ith c30o 'ersion 0.+.1.2
33"/331/355 Ne( eature
332 Ne( eature
330 Ne( eature
323/35" Ne( eature
Ne( eature
325 Ne( eature )$$e$ a real-time calculate$ >o(ing %alance> to the user inormation
323 Enhancement Remo'e$ user 0ricing co$e an$ a$$e$ an item 0rice cache.
322 Ne( eature
321 Ne( eature
320 Bug i! .i!es to 'arious re0orts
31+ Bug i! 8n'oice %alance (as not consi$ering negati'e %alances.
.i!e$ %ug that 0re'ente$ setting the $eault curren- o a customer
.i! or creating or$ers through the )P8: 6he language o the customer o the
or$er is no( use$ or or$er line item $escri0tions
.i!e$ minor %ug in in$8$sB-2ser)n$8tem6-0e9atest.irst Cuer-
.i!e$ %ug (here language8$ (asn>t %eing sa'e$ to the $ata%ase or users
create$ through the )P8
Pre-com0ilation o *SP 0ages. S(itch rom *Boss to neutral @all in the (ar ileA.
Ne( )P8 metho$: >Pa-ment)uthori&ationD6,E! 0rocessPa-ment@Pa-mentBS
0a-mentA>. )llo(s 0a-ments rom ar%itrar- cre$it car$s to %e 0rocesse$.
Ne( telco in'oice $esign that lists e'ents in an a00en$i!. 8n'oice $esigns can
no( o0tionall- get an SG9 connection to Cuer- the $ata%ase $irectl- or $ata.
Pa0er8n'oiceNotiication6as7 can no( select an in'oice $esign %ase$ on the
customer>s language.
)$$e$ )P8 metho$ 'ali$atePurchase. 8t chec7s the $-namic %alance against
the 0rice o the gi'en item.
6(o ne( a0i metho$s: is2serSu%scri%e$6o an$ get2ser8temsB-#ategor-
)ccount hierarch- can %e N le'els $ee0 @instea$ o onl- 2A. ) customer then
can %e %oth 0arent an$ chil$ at the same time.
6(o ne( )P8 metho$s relate$ to me$iation: >,r$erBS get#urrent,r$er@8nteger
user8$/ Date $ateA> an$ >,r$erBS u0$ate#urrent,r$er@8nteger user8$/
,r$er9ineBSIJ lines/ Pricing.iel$IJ iel$s/ Date $ateA>. )llo(s the me$iation
current one-time or$er to %e returne$Eu0$ate$.
32"/321/328/
32+/331/333/
335 D-namic %alances su00ort: 0re-0ai$ %alances an$ cre$it limits.
Ne( e'ents-to-rules 0lug-in. )llo(s rules to %e run (hen e'ents it su%scri%es
to @conigure$ in S0ringA are triggere$.
Ne( )P8 metho$: 8ntegerIJ create8n'oice@8nteger user8$/ %oolean
onl-RecurringA. :enerates in'oices or or$ers not -et in'oice$ or this user.
,0tionall- onl- allo( recurring or$ers to generate in'oices. Returns the i$s o
the in'oices generate$.
Sheet1
Page "
315 Bug i! .i!es to 0artners mo$ule.
30+ Ne( eature
308/338 Enhancement
"+1 Bug i! Re0orts: ,r$er lines i!
"35 Buil$ 0rocess
"30 Enhancement
""5 Enhancement
"58/ ""1 Ne( eature Ne( e'ent on in'oice creation an$ 0lug-in to sa'e a ne( in'oice to a te!t ile.
"53 Enhancement
"32 Enhancement
Version: 1.1.5
Date: 200+-01-23
Re'isions inclu$e$: rom "32 to 353 @su00ort %ranch onl-A
Revision Change type Description
353 Enhancement S(itch to c30o as $ata%ase connection 0ool
350 Bug i! .i!e$ %ug (here re'ie( in'oices (oul$ %e getting real in'oices $elegate$.
318 Bug i! .i!e$ %ug (here $eleting an item t-0e (oul$ ail.
313 Bug i!
313 Bug i!
30" Bug i! .i!e$ %ug (here the list (on>t u0$ate in the %atch 0rocess.
"++ Bug i!
"+8/303 Bug i! .i!e$ 0otential loc7s %et(een 0rocess an$ 0a-ment in retries.
"+3 Bug i! .i! or or$er creation rom rules.
"+2 Bug i!
""8 Bug i!
""" Bug i! .i!es to list stats 0rocess an$ entit- creation.
""2/ 303 Bug i!
""0 Bug i! .i!e$ %ug (here emails (oul$ %e sent onl- to the last in the list.
"51 Bug i!
Version: 1.1.3
Date: 200+-0"-1+
Re'isions inclu$e$: rom 511 to "31
Ne( in'oice ilter that onl- allo(s in'oices (ith a negati'e %alance to %e
carrie$ o'er.
.ile8n'oiceE!0ort6as7 >tot$ue> column no( inclu$es the %alances rom
0re'ious in'oices.
Buil$ con'erte$ or 6omcat. DBilling an$ reCuire$ Dars (ill 0ac7age into a single
B)R ile/ e!clu$ing some coniguration iles @(hich must %e on the runtime
class0athA an$ the resources $irector-.
==S# e!ternal 0ro'isioning 0lug-in can no( communicate (ith the real (e%
ser'ice.
Remo'e$ remaining unnecessar- Da'a!.eD%.K e!ce0tions.
*=S co$e con'erte$ to use S0ring an$ )cti'e=G. DBilling is no longer
$e0en$ent on *Boss or an- ser'ices.
Be% ser'ices con'erte$ to use S0ring an$ #H.. .our remoting 0rotocols
su00orte$ %- DBilling )P8: S,)P/ ?essian/ Burla0 an$ R=8.
.i!e$ %ug (here $elegate$Einclu$e$ in'oices (eren>t lin7e$ to the ne( in'oice
correctl-
.i!e$ me$iation coniguration :28 screen NullPointerE!ce0tion (hen
su%mitting a ne( coniguration
.i!e$ %ug (here onl- the last in'oice (as consi$ere$ to transition a customer
rom 0en$ing unsu%scri0tion to unsu%scri%e$.
.i!e$ t(o %ugs: o0timistic loc7 (hen an in'oice (ith 0a0er notiication is 0ai$
in the %illing 0rocess/ an$ storage o notiications archi'e lines.
Nee$s to loc7 in'oices that generate 0$ iles.
.i!e$ %ug (here the %illing 0rocess (oul$ not generate the 0a0er in'oice
%atch ile.
.i!e$ %ug (here the %illing 0rocess (oul$ not %e a%le to u0$ate the ne!t run
$ate.
Sheet1
Page 3
Revision Change type Description
"28 Enhancement
"21 Bug i!
"18 Enhancement
"11 Ne( eature )$$e$ 5 ne( getters to the )P8
"13 Bug i!
"13 Enhancement
"12 Bug i!
"11/"15/"1" Enhancement S(itch to local transactions E $ata source.
"08 Ne( eature Ne( ==S# e!ternal 0ro'isioning 0lug-in.
"01 Enhancement
"0"/"03 Enhancement No( -ou can $elete or$ers rom rules.
"05 Enhancement
"03 Enhancement
"02 Ne( eature
"01 Bug i! Struts nee$s an 8nteger/ not an int to (or7. .i!e$ 0ro%lem (ith Plug-ins :28.
"00 Enhancement
5++ Enhancement
5+8 Enhancement
5+1 Enhancement
5+" Enhancement
5+5 Enhancement
5+3 Ne( eature
5+2 Enhancement
5+1 Enhancement
5+0 Enhancement
581 Ne( eature
583 Ne( eature 69S securit- su00ort or emails.
58" Enhancement
583 Bug i!
582 Enhancement =e$iation 0erormance im0ro'ement.
581 Ne( eature
580 Enhancement
511/518/51+ Enhancement =igration o remaining entit- %eans to *P).
513 Ne( eature
Remote %eans shoul$ initiali&e la&il-/ so onl- those nee$e$ %- the client ha'e
to get their $e0en$encies satisie$.
.i!e$ %ug or 0a-0al 0a-ments
#onirmation 0age or user $elete - 'ali$ation o user name u0 to "0 char. -
2ser $eletion 'eriies that there aren>t chil$ren accounts.
Ne( $etach metho$ or )%stractD)S. ,r$er o0tloc7 no longer incremente$
(hen :28 rea$s an or$er.
*DB#Rea$er no longer nee$s >last i$> 0reerence to %e initiall- set %- user.
)$$e$ i$ generator to PreerenceD6,.
*DB# rea$er: )$$e$ one s0ace so it $oesn>t ail (here there>s not e!tra
>(here>
Partial con'ersion o Be%Ser'icesSessionBean to S0ring. 6ransactions
han$le$ %- a ne( S0ring manage$ %ean/ Be%Ser'icesSessionS0ringBean/
%ut original Be%Ser'icesSessionBean E*B still han$les (e% ser'ices.
#on'ersion o Pro'isioningProcessSessionBean to S0ring.
#on'ersion o BillingProcessSessionBean to S0ring. Some session %eans are
also no( accessi%le remotel- 'ia R=8 or tests.
)$$e$ %arco$e su00ort or PD. in'oices
#on'ersion o Re0ortSessionBean to S0ring.
#on'ersion o =e$iationSessionBean to S0ring.
#on'ersion o Pa-mentSessionBean to S0ring.
#on'ersion o Plugga%le6as7SessionBean to S0ring.
#on'ersion o ,r$erSessionBean to S0ring.
#on'ersion o 8n'oiceSessionBean to S0ring.
)$$e$ SS9 authentication su00ort or emails in BasicEmailNotiication6as7.
#on'ersion o 2serSessionBean to S0ring.
#on'ersion o 9istSessionBean to S0ring.
#on'ersion o #ustomerSessionBean to S0ring.
Pa-mentRouter6as7 is no( Pa-mentRouter##.6as7. Ne(
Pa-mentRouter#urrenc-6as7 that routes 0a-ments accor$ing to currenc-.
Both these classes inherit rom a ne( )%stractPa-mentRouter6as7 class.
,%solete$ 0romotions/ in a'our o rule %ase$ 0romotions.
.i!e$ %ug (here the currenc- (oul$ %e ignore$ (hen creating a user rom the
)P8
)$$e$ the >auto8D> 0arameter or ile rea$ers/ an$ ma$e all iel$s o0tional.
)$$e$ remo'al o Cuotes or #DRs in iles.
)P8: Ne( get#hil$8$s@A metho$ or 2serBS. Returns the i$s o su%-accounts in
an 8ntegerIJ.
Sheet1
Page 1
515 Ne( eature
53+ Buil$ 0rocess
531 Ne( eature )$$e$ 'elocit- tools to all notiications
533 Ne( eature
535 Bug i!
5"3 Enhancement )'oi$s su%mitting 0a-ment reCuests or in'oices (ith 0 %alance
5"" Buil$ 0rocess )$$e$ rules com0ilation target to test target
5"5 Enhancement #on'ersion o =enu ,0tion to *P)
5"0 Enhancement
551 Enhancement 2sage o a 0lug-in or su%scri0tion status transitions is no( o0tional
555 Enhancement
552 Enhancement
550/551 Ne( eature Re0lace$ custom tem0late engine %- Velocit- or notiications.
53+ Enhancement #on'ersion o Notiication session %ean to S0ring.
538/553 Enhancement =igration o Re0orts to *P).
531 Ne( eature
533 Bug i! ,r$ers rom the :28 nee$ to ha'e the currenc- o the customer.
53" Ne( eature
533/535
532 Ne( eature Emails can %e in ?6=9 ormat
531/558 Enhancement =igration o Notiication to *P).
530 Enhancement
521 Ne( eature
523/528 Enhancement =igration o 9ist to *P)
52" Ne( eature )llo( item management rules to create ne( or$ers.
522 Enhancement
521/523 Ne( eature
520/525 Ne( eature
51+ Enhancement
518 Bug i! mo'e$ the me$iation 0rocess a%o'e the %illing 0rocess
511 Bug i!
513 Enhancement =igrate$ all 8tem relate$ entit- %eans to *P).
Ne( 0ro'isioning status column or or$er lines in :28. Status ta%les
consoli$ate$ into a single ta%le >generic;status>/ $iscrimate$ %- i$s in
>generic;status;t-0e>. Status D6, classes no( inherit rom a ne(
)%stract:enericStatus class. 6heir D)S classes inherit rom a ne(
)%stract:enericStatusD)S class.
S(itch to 0ostgres or %uil$.
Ne( #)8 e!ternal 0ro'isioning 0lug-in. Buil$s inal comman$ string an$
communicates (ith the #)8 s-stem 'ia 6elnet.
Notiication ageing message gets the latest o'er$ue in'oice/ rather than Dust
the latest in'oice.
8n Rules8tem=anager/ a$$e$ ,r$erD6, to the rules memor- conte!t.
Rules8tem=anager.,r$er=anager has ne( 0ercentage,n,r$er9ine hel0er
metho$ - can a$$ a 0ercentage item (ith its amount calculate$ using another
or$er line>s amount.
=o'e$ the $einition o the num%er o sections or a notiicaiton to the 0lug-ins.
6hen change$ the notiication 0lug-in to use 3 sections an$ sen$ ?6=9 (ith
te!t alternati'es @i a 0arameter is 0resentA.
Ne( e!ternal 0ro'isioning mo$ule. 8t translates comman$s rom the
0ro'isioning comman$s mo$ule an$ sen$s them to 0lug-ins (hich
communicate (ith e!ternal 0ro'isioning s-stems.
Su%scri0tion status changes to >acti'e> onl- i an in'oice relate$ to a s0eciic
item t-0e is %eing 0ai$.
#on'ersion o 8temSession to S0ring
Remo'e$ Ne(,r$erSessionBean. 8t (as the onl- stateul session %ean in
DBilling.
Ne( 0ro'isioning comman$s mo$ule. 8t allo(s e!ternal s-stems to %e notiie$
an$ res0on$ to e'ents that occur in the %illing s-stem.
Pricing.iel$ mo$iie$ to allo( null 'alues.
Recor$ing o e'er- e'ent that aects an or$er line/ (ith a ne( screen in the
:28 to list them.
Ne( *DB# an$ =-SG9 me$iation rea$er 0lug-ins. .i!e$ a me$iation 0rocess
%ug relate$ to ?i%ernate.
#ache $eaults or the 8temD6, grou0 o ta%les.
.i!e$ Pa-ment.ilter6as7 0lug-in 0arameter name %ug:
>ena%le;ilter;cc;num%er> (as acci$entall- >ena%le;ilter;test>
Sheet1
Page 8
Version: 1.1.2
Date: 2008-11-20
Re'isions inclu$e$: rom 35" to 510
Revision Change type Description
510 Enhancement
50+ Ne( eature
508 Bug i!
501 Bug i!
503 Bug i!
50" Enhancement E!clu$e sus0en$e$ users rom the %illing 0rocess.
505 Bug i! .i!e$ %ug (here a$$itional contact t-0es coul$ not %e create$ or a customer.
500-503 Bug i! )'oi$s loa$ing all the customers o a com0an- or the %illing 0rocess.
3++ Bug i!
3+3E3+1 Enhancement Ne( )P8 metho$s to mani0ulate items an$ rate or$ers.
3+" Bug i!
3+1 Enhancement Gueries relate$ to contract ulillment (or7 no( on in'oices @0ai$ an$ not 0ai$A.
38+ Bug i!
383 Bug i! Se'eral i!es to 0ost-0ai$ contract su00ort
38" Enhancement Ne( internal e'ent or in'oice generation
383E385 Bug i! .i!e$ %ug relate$ to custom iel$s in PD. in'oices.
381 Bug i! .i!e$ %ug (here the item num%er (as ignore$ (hen creating a ne( item.
380 Bug i!
31+ Enhancement =a7es the client )P8 threa$ sae
318 Enhancement #on'ersion o #ontact entit- %eans to *P).
312 Enhancement #on'ersion o Permission an$ Preerence to *P)
310 Enhancement
Enhancement =igration o 2ser/ Entit- to *P)
Ne( eature
3"+E332 Enhancement
3"8 Buil$ 0rocess
3"1 Bug i!
3"3 Enhancement
3"" Ne( eature
3"3E3"5 Bug i! .i! to e!ce0tion (hen getting list o or$ers as a customer.
3"2 Enhancement Primar- contact shoul$ sho( u0 irst in the $ro0 $o(n %o!.
.i!e$ the rules >ile> 0lug-in 0arameter to (or7 (ith multi0le iles again/ (hether
the 0athEs are a%solute or relati'e rom >D%illingEresourcesErules>.
8n'oices (ith cre$it %alances can ha'e their cre$it 0a-ments $ela-e$ until the
ne!t in'oice.
.i!e$ %ug (here calling >0a-8n'oice> (oul$ create a 0a-ment (ithout a $ate.
.i!e$ %ug (here the customer >e!clu$e rom ageing> can not %e unchec7e$.
.i!e$ Reun$,n#ancel6as7 to correctl- calculate 0ercentage item or$er line
amounts or reun$s.
.i!e$ %ug (here the ser'let u0 chec7 (as not (or7ing/ it $i$ not ha'e a
transaction conte!t.
Pa-ments not attem0te$ $ue to lac7 o a 0a-ment instrument @e!0ire$ ccA/
shoul$ still increase the attem0ts on the in'oice.
.i!e$ currenc- s-m%olEco$e mi!u0.
#hanging an cre$it car$ shoul$ in'ali$ate 0re-authori&ations.
)$$e$ an >integer> 'ersion o getGuantit-/ to sim0li- rule (riting
331E333E335E
33"E333E331E
338E33+E31"
330E313E313E
311E382E381E
3+0E3+3
Blac7list: .ails 0a-ments or users that are 0resent in a list o 7no(n %a$ cre$it
car$s.
)$$e$ custom contact iel$s as sim0le o%Dects in the memor- conte!t or
0ricing rules.
.i!e$ me$iation Dunit test
.i!e$ %ug (here the cancellation o onl- a e( items onl- calculate$ 1 0erio$
or cancellations ees.
)$$e$ $eault 'alue or or$er.c-cle;starts
)$$e$ 0rocessing o cre$its an$ cancellation ees or changes in an or$er
@a$$E$eleteEu0$ate a lineA.
Sheet1
Page +
3"1 Bug i!
3"0 Enhancement )$$e$ timeout to )!is )P8 an$ entr-Ee!it logs to )P8.
35+ Ne( eature
358 Ne( eature )utomatic 0enalties or earl- 0lan cancellation
351 Bug i!
Version: 1.1.1
Date: 2008-01-01
Re'isions inclu$e$: rom 311 to 355
Revision Change type Description
355 Ne( eature Guantities o items in the or$er lines can ha'e $ecimals.
353 Ne( eature
33+ Ne( eature
333/ 350/ 351 Ne( eature )$$e$ or$er su00ort or Pro-Rating
32"/ 321/ 332 Ne( eature Ne( 0a-ment 0rocessor or integration (ith Bean Stream gate(a-.
Enhancement =igrate$ all ,r$er relate$ entit- %eans to *P)
322 Ne( eature Ne( 0a-ment 0rocessor or integration (ith Sage Pa-ments gate(a-.
320 Bug i!
31+ Bug i!
318 Ne( eature
311 Bug i!
31" Enhancement
315 Buil$ 0rocess Rules 0ac7ages are irst remo'e$ %eore unit testing.
313 Buil$ 0rocess
312 Bug i! .i!e$ $ata%ase initiali&ation/ a column ha$ the (rong $ata t-0e.
Version: 1.1.0 inal
Date: 2008-03-12
Re'isions inclu$e$: rom 213 to 310
Revision Change type Description
310 Enhancement Returns a #alen$ar o%Dect as a con'enience metho$ or 0ricing o%Dects.
301 Bug i! .i!e$ %ug (here N299 o%Dects coul$ ma7e it to the rule>s (or7ing memor-
303 Ne( eature
.i!e$ %ug that sto00e$ the ageing 0rocess (hen notiication lines (here
retrie'e$ in the (rong or$er.
Pa-ment 0rocessor 0lug-in or )uthori&e.net #8=.
.i! %ug (here the cancellation ails $ue to the or$er in the e'ent %eing
$etache$ rom the $% session.
Ne( 0lug-in categor- to 0rocess internal e'ents/ an$ irst im0lementation to
han$le cre$its or earl- su%scri0tion cancellations.
Ne( 0a-ment 0rocessor or integration (ith 8ntrannuit- gate(a-.
323/ 325/
328/ 32+/
330/ 331/
331/ 338
.i!e$ %ug (here one line too man- (as a$$e$ on the one-time or$er in the
me$iation 0rocess. )lso/ eliminates memor- lea7 %- clearing the $rools
session.
.i!e$ %ug (here the >0rocessor una'aila%le> e'ent (oul$ not trigger transitions
to the su%scri0tion status.
Su00ort or Pa-Pal su%scri0tions: acce0ts 8PN 0a-ment (ithout an in'oice i$
6here (as a (rong oreign-7e- in the $ata%ase initiali&ation or a me$iation
ta%le.
S0ecial consi$eration or monthl- or$ers that start on the 31
st
o a month/ so
the- 7ee0 %eing in'oice$ on the last $a- o e'er- month.
Pre-com0ilation o *SP 0ages can no( %e $one on 9inu!
Ne( 0lug-in that $oes return cre$it car$s (ithout 'ali$ation @or using e!0ire$
cre$it car$sA.
Sheet1
Page 10
30" Bug i!
305 Bug i! Various i!es to me$iation rules co$e.
303 Ne( eature )$$e$ $u0licate recor$ 'ali$ation or the me$iation 0rocess.
302 Bug i!
2++/300 Bug i! Remo'e$ the 0u%lic schema rom DD9 annotations
2+1/2+8 Enhancement
2+3 Enhancement
Enhancement
2+2/2+3 Enhancement
2+1 Enhancement Porte$ the >e'ent;log> ta%le rom entit- %ean to *P).
2+0 Ne( eature
28+ Enhancement
281 Bug i! .i!e$ o%Dect u0$ate 0roce$ure or rule-%ase$ 0lug-ins
285 Bug i! .i!e$ %ug relate$ to remo'al o loc7 in re'ision 211
Version: 1.1.0 R#1
Date: 2001-11-21
Re'isions inclu$e$: rom 253 to 21"
Revision Change type Description
215/21" Ne( eature =e$iation mo$ule
213 Enhancement #ache$ the ta%les 8Ds to im0ro'e 0erormance an$ a'oi$ loc7sE$ea$loc7s.
211/212 Bug i! )nother i! to loc7ing issues. 6his time (hen loo7ing or the entit- i$ o a user.
210 Buil$ 0rocess )$$e$ unit tests or the rule %ase$ 0ricing 0lug-in
23+ Ne( eature
238 Enhancement
233-231 Bug i!
232 Ne( eature
231 Bug i!
230 Bug i!
2"+ Enhancement
2"8 Ne( eature Ne( )P8 metho$ to get all su%scri%er status transitions ater an 8D
2"1 Ne( eature Search a customer %- the last our $igits o the cre$it car$
2"3 Buil$ 0rocess #hanges to %illing 0rocess unit test to com0lete the 1000 in'oices test.
2"" Enhancement
2"5 Bug i! *=S uses in-memor- communication @*V=89A
.i!e$ %ug (here the lac7 o a cre$it car$ $i$ not u0$ate the su%scri%er status.
)lso a$$e$ a$$itional e'ent logging.
6he re'ie( 0rocess shoul$ not u0$ate the su%scri0tion status to
>unsu%scri%e$>.
S(itche$ the >get2ser8$> )P8 call to *P).
6he lag or 0re-authori&ations is no( sho(n or 0a-ments in re0orts an$ the
0a-ment ino %o!.
2+5/2+"/301/
308/30+
Bhen u0$ating the ne!t $a- to in'oice o an or$er/ the latest in'oice 0erio$ is
also u0$ate$ accor$ingl-.
Sames as 2+1/ also ena%le$ ull *6) or *P) an$ use o the *Boss $atasource.
)$$e$ a%ilit- to 0rocess me$iation e'ents rom $ierent %illing 0erio$s/ (ith
multi0le one-time or$ers 0artici0ating.
8m0ro'e$ )P8 metho$ get9ast,r$ers. 8t $oes not return $elete$ or$ers an-
longer.
E!ten$e$ unctionalit- or item associations an$ ne( rules %ase$ 0lug-in or
item 0ricing.
)P8:Not ha'ing a 'ali$ cre$it car$ $oes not thro( an e!ce0tion an- longer/ it
returns null.
Re0lace$ %inar- con'ersion rom %ase35 to he! ater in$ing some cases (ith
incorrect con'ersion
)$$e$ a ne( 0lug-in t-0e (ith an im0lementation to allo( com0le! item
relationshi0s using Drools.
6he 'ali$ation o $ates (as $one (ith the current $ate/ rather than the or$er>s
creation $ate.
6he )P8 metho$ get2serB-Status misuse$ the 0arameters
)llo( the cc num%er to %e null or calls to u0$ate#re$it#ar$. 8n this case/ the
num%er is let unchange$.
)P8: get,r$er shoul$ %e a%le to return a $elete$ or$er.
Sheet1
Page 11
2"5 Bug i! Cueries or list o users to the )P8 run on $irect *DB# connections
2"5 Enhancement
2"5 Enhancement Ne( a7e email notiication tas7 to acilitate testing
2"5 Buil$ 0rocess test $ata%ase no( has 1000L users or %etter unit testing
2"3 Enhancement
2"2 Bug i!
2"1 Enhancement
2"0 Bug i!
25+ Bug i!
25" Enhancement
Version: 1.0.+
Date: 2001-08-23
Re'isions inclu$e$: rom 211 to 252
Revision Change type Description
252 Bug i! .i!e$ %ug (here entering commission ranges or a ne(l- create$ 0artner ails.
251 Bug i!
250 Bug i!
231/238 Bug i!
233 Bug i!
23" Enhancement 8m0ro'e$ a conusing error message or the )P8 actor-.
235 Ne( eature
233 Enhancement
232 Bug i! Bug i!: #loses stream use$ or the in'oice $esign iles.
231 Enhancement
230 Bug i!
22+ Bug i!
228 Bug i! .i!e$ minor %ug on the su%scri0tion transitions re0ort.
221 Enhancement
22"/223 Bug i!
225 Ne( eature
222 Enhancement
221 Bug i! )'oi$ $ea$loc7 on %illing 0rocess (hen loo7ing or a run to u0$ate.
user creation rom the )P8 assumes cre$it car$ is use$ or automatic 0a-ment
0rocessing/ i a cc is 0resent.
<ee0 the o0en iles at a minimum (hen com0iling PD. in'oices into a single
ile.
=a7e sure the tem0orar- in'oice iles are close$ ater the- are com0lie$ in one
single PD..
Do(nloa$ing the in'oices or a %illing 0rocess onl- inclu$es those customers
that ha'e PD. in'oice $eli'er- metho$
=igrate$ the our entit- %eans relate$ to 0lugga%le tas7s ta%les to *P). 6his
sol'e$ the loc7ing 0ro%lem or the 0a-ment notiications o the %illing 0rocess.
Su%scri0tion status >e!0ire$> can onl- %e reache$ rom status >0en$ing
e!0iration>.
#hil$ customers that can recei'e in'oices shoul$ %e inclu$e$ in the stan$ar$
customer list.
.i!e$ %ug (here the su%scri%er status (oul$ not %e initiali&e$ in the user e$it
screen.
.i!e$ %ug/ (here a null 0ointer e!ce0tion (oul$ %e thro(n i there are no
com0anies at the or$er notiications.
)P8 u0$ate2ser: Shoul$ not 'ali$ate the 0ass(or$ i it is not to %e change$
8t no( ma7es sure a transaction i$ generate$ %- the test 0rocessor $oes not
e!cee$ 20 character.
)$$e$ $elete8n'oice )P8 metho$
)llo(s cre$it car$ an$ contact to %e null (hen calling >u0$ate2ser>. 8 the- are/
the- are not u0$ate$.
)$$e$ the threa$ inormation to the logging on D%illing.log
Data initiali&ation i!: 6he $escri0tion o the tas7 t-0e categor- has to %e
shorter
.i!e$ %ug (here the su%scri0tion status (oul$ change rom 0en$ing
unsu%scri0tion to unsu%scri%e$ %eore the en$ o the su%scri0tion.
,nl- inclu$es acti'e or o'er$ue customers to the cre$it car$ a%out to e!0ire
notiication.
Remo'e$ loc7 (hen using a 0lugga%le tas7: %illing 0rocess coul$ ail (hen
sen$ing 0a-ment notiications.
)$$e$ the >$iscontinue$> su%scri%er status/ to %e set onl- manuall-. 8t is lin7e$
to the sus0en$e$ ageing status.
)$$e$ the *B8998N:;PR,PER68ES;.89E *V= 0ro0ert- (ith the name o the
0ro0erties ile to use %- the D%illing client a0i. 8t $eaults to its original 'alue.
Sheet1
Page 12
220 Bug i!
21+ Bug i!
215/ 21" Bug i! .i!e$ %ug relate$ to the a7e 0a-ment 0rocessor or com0an- creation.
Version: 1.0.8
Date: 2001-01-03
Re'isions inclu$e$: rom 1"3 to 210
Revision Change type Description
210 Bug i! 6his i!es a %ug (here 0artners coul$ not %e 0ai$.
20+ Ne( eature
208 Ne( eature
201 Enhancement
203 Enhancement
205 Enhancement
203 Buil$ 0rocess )$$e$ 'ersion/ re'ision/ etc to the maniest o the Dar iles 0ro$uce$.
202 Bug i!
200 Enhancement
1++ Ne( eature
1+8 Ne( eature
1+1 Bug i! .i!e$ %ug (here su% account list (as cache$ (rongl-
1+3 Enhancement Su00orts sen$ing a 0arent i$ (hen creating a user through the )P8.
1+1 Enhancement
181 Ne( eature )$$e$ eature to loc7 out a user i too man- login attem0ts.
183/ 1+" Ne( eature Ne( metho$ or the (e% ser'ices )P8: user authentication.
185/ 18" Ne( eature
183 Ne( eature
180 Enhancement
138 Enhancement
133 Enhancement #ustom contact iel$s are no( $is0la-e$ in the stan$ar$ contact ino %o!.
13"/ 181/ 20" Ne( eature Ne( 0a-ment 0rocessor or integration (ith )#? #ommerce gate(a-.
133 Enhancement
.i!e$ %ug (here the 0rocess retries (oul$ not u0$ate the totals. )lso a$$e$
the retries to the automate$ unit tests.
.i!e$ %ug (here the or$er>s acti'e sinceEuntil (oul$ not %e change$ ater the
or$er (as e$ite$.
Pa-ment 0rocessing or the %atch %illing 0rocess is no( as-nchronous. )lso
a$$e$ unit test cases or the %illing 0rocess.
)$$e$ a ser'er u0 chec7 ser'let to allo( monitoring tools to 0ing D%illing.
)$$e$ 'ali$ator to a'oi$ (e% ser'ices calls (ith in'ali$ contact t-0e (hen
calling >u0$ate2ser#ontact>.
6he or$er ne!t %illa%le $a- iel$ $oes not nee$ the time/ Dust the $ate is
enough.
Do not allo( ne( or$ers to ha'e >ne!t in'oice $ate> set. )lso/ im0ro'e$
'ali$ation o this iel$ (hen e$iting.
.i!e$ %ug (here the retrie'al o the latest in'oice (oul$ not ilter out $elete$
users.
#hanges to allo( multi0le or$er lines (ith the same item to %e a$$e$ rom the
(e% ser'ices )P8.
)$$e$ an )P8 metho$ to e!0licitl- create an or$er an$ an in'oice/ re'erting
>create,r$er> to its ol$ %eha'ior/ (hich is to onl- create an or$er.
) su%-account can choose to recei'e its o(n in'oices/ instea$ o $elegating
them to the 0arent account.
)llo(s to go to status unsu%scri%e$ rom an- status (hen an or$er changes to
inishe$.
)$$e$ ne( 0ass(or$ 'ali$ators: can not %e re0eate$ or the last t(o -ears/
an$ can not ha'e contact inormation.
) user 0ass(or$ can e!0ire no( ater a 0erio$ o time/ orcing the user to
change it.
Remo'e$ har$ co$e$ 0a-0al 2R9 call%ac7 @8PNA. 6his 2R9 has to %e setu0 on
the 0a-0al account.
#hil$er accounts inherit the 0arent>s contact (hen create$.
)$$e$ a ne( 'ali$ator to %e use$ (ith 0ass(or$s: string has to ha'e %oth
num%ers an$ letters.
Sheet1
Page 13
Enhancement
Ne( eature
Version: 1.0.1
Date: 2001-05-12
Re'isions inclu$e$: rom +1 to 1"2
Revision Change type Description
152 Enhancement
131E138 Bug i!
133/153 Enhancement )$$e$ an e!0licit res0onse message iel$ to the 0a-ment authori&ation recor$
Ne( eature E'ent 0rocessing su00ort an$ a$$ition o su%scri%er status to the user
12+ Ne( eature
128 Ne( eature
121 Ne( eature
123155 Enhancement
125 Ne( eature
123 Ne( eature Ne( (e% ser'ices metho$ to allo( the u0$ate o a cre$it car$ onl-.
Ne( eature
111E118 Ne( eature
113 Enhancement Ne( a7e 0a-ment 0rocessor to ena%le eas- testing o transactions.
11"/11+/135 Ne( eature
115 Ne( eature
111E112 Ne( eature Encr-0tion o cre$it car$ inormation @num%er an$ nameA.
111/112/13+ Ne( eature Encr-0tion o user 0ass(or$s @one-(a- metho$A
10"/103/108 Ne( eature
++-102/153 Ne( eature )larm eature to noti- 'ia email i a 0a-ment 0rocessor is not res0on$ing.
+8 Enhancement Restore au$iting to the $ata%ase/ rather than onl- log iles.
+1 Ne( eature
+3 Enhancement 8m0ro'e$ accurac- o $ecimal calculations to 10 $ecimal $igits.
+5 Enhancement 6ranslation to Portuguese
+2 Enhancement )$$e$ the )ustralian Dollar to the list o $eault currencies
Version: 1.0.3
Date: 2001-01-2"
1"1-132/
131/ 110-
11+/ 1+3/ 201
8nternal co$e im0ro'ements to acilitate mo$ule maintenance. 6he class
:eneric=aintain)ction (as re0lace$.
1"3/135/13+/
188/ 1+2
6he D%illing client )P8. 6his is a ne( Dar ile to access D%illing (ith a la-er o
a%straction o'er (e% ser'ices or E*B remote calls.
Be% ser'ices metho$s that 0rocess a 0a-ment through a 0a-ment gate(a-
no( return the res0onse rom the gate(a-. 6his aects >create> an$
>0a-8n'oice>.
6he scri0t to create a ne( com0an- no( (or7s (ith Postgres 8.1.!
130/132/133/
13"/155/1"2
)$$e$ the (e% ser'ices metho$ >0a-8n'oice>/ an$ the metho$ >create,r$er>
no( also creates an$ in'oice or the or$er i >acti'e since> is not null.
Ne( (e% seri'ces metho$ to retrie'e all the items in a single call.
Ne( (e% ser'ice metho$ to retrie'e the list o users (hose su%scri%er status
has change$.
6he iel$ >ne!t in'oice $ate> o or$ers is no( e$ita%le rom %oth the (e%
ser'ices )P8 an$ :28
)$$e$ entit- 0reerence that remo'es the cre$it car$ num%ers rom logs an$
au$it. 6he num%er is mas7e$ (hen $is0la-e$ or return %- (e% ser'ices
121/122/150/
151
.our ne( re0ort t-0es: transactions/ su%scri0tion transitions/ user status
transitions
Ne( 0a-ment 0rocessor 0lug-in/ that routes the 0rocessing to another @realA
0rocessor $e0en$ing on a custom contact iel$.
6he 0a-ment 0rocessing ca0tures a 0re-authori&ation i one is 0resent/ instea$
o $oing a ne( charge in all occasions
#re$it car$ num%ers are mas7e$ or customers (hen su%mmiting a 0a-ment.
Ne( (e% ser'ice metho$ to 0re-authori&e cre$it car$ 0a-ments
6he gra0hic ile use$ or the logo o the 0a0er in'oice can no( %e u0loa$e$
rom the :28
Sheet1
Page 15
Re'isions inclu$e$: rom 11 to +0
Revision Change type Description
8+ Buil$ 0rocess
88 Buil$ 0rocess
83 Buil$ 0rocess
85 Bug i!
82 Bug i!
80 Buil$ 0rocess
80/81 Enhancement
1+ Bug i! Deleting an in'oice lin7e$ to a 0a-ment (oul$ cause an error
Version: 1.0."
Date: 2003-11-21
Re'isions inclu$e$: rom 3" to 13
Revision Change type Description
13 Bug i! )n em0t- cre$it car$ num%er in cre$it car$ e$ition 0age results in an error.
1" Bug i! ) sot $elete$ user (oul$ remain (ith a status other than >$elete$>.
15 Bug i!
13 Bug i! 6he 0ass(or$ iel$s (ere al(a-s reCuire$ (hen u0$ating a user recor$.
12 Enhancement
3+/10 Bug i! )$$e$ 'ali$ation to 0re'ent ractions o 0erio$s in or$ers.
3"/38 Buil$ 0rocess
Version: 1.0.5
Date: 2003-10-12
Re'isions inclu$e$: rom "" to 35
Revision Change type Description
35 Enhancement 9oa$ o currenc- inormation at the s-stem le'el is no( $one once at startu0
33 Ne( eature
31 Ne( eature
"+ Enhancement
.i!e$ some $u0lication o iles in the source 0ac7age/ an$ a$$e$ the Dunit.Dar
to allo( the test-(s target to run
)$$e$ *2nit (e% ser'ices tests or 0a-ment/ an$ im0ro'e$ the setting u0 o
the test $ata%ase.
)$$e$ *2nit (e% ser'ices tests or users.
Bhen creating a ne( com0an-/ lea'ing the 0hone area co$e em0t- (oul$
result in an error.
Some re0orts (oul$ ail (ith a null 0ointer e!ce0tion/ relate$ to su00orting
,racle>s 0ro0rietar- $ata t-0es.
6he *2nit tests o the or$ers (e% ser'ices ha'e %een u0$ate$ an$ 0ut in line
(ith the $e'elo0ment $ata%ase.
#reation an$ u0$ate o 0urchase or$ers through the (e% ser'ices )P8 no(
calls th e 0lugga%le tas7s that calculate the total or each or$er line.
#hange$ the $ata %ase schema to accommo$ate ,racle>s reCuirements. )
sanit- test no( runs (ell on ,racleHE
=a7e 0ossi%le to change the status o a user regar$less o the coniguration o
the ageing 0rocess.
)ligne$ the %uil$ scri0t to match the ne( location o D%illing that ma7es it the
$eault a00lication at start-u0.
6he D%illing 0rocess is no( triggere$ %- its o(n mechanism conigure$ in the
D%illing.0ro0erties ile. 6his re0laces the nee$ to setu0 a #R,N or )6
coniguration rom the o0erating s-stem.
Business rules 0lug-ins can no( %e ull- conigure$ rom the :28. 6here is a
ne( menu o0tion or a$ministrators (here the- can $elete/ create an$ mo$i-
an- 0lug-ins an$ its 0arameters.
8n'oice lines no( are store$ (ith a lag in$icating i the line is 0ercentage or
not. 6his hel0s $is0la-ing the in'oice correctl-/ since a 0ercentage shoul$ not
%e inclu$e$ in the >0rice> column o an in'oice.
Sheet1
Page 1"
"+ Enhancement
"8 Bug i! .i!e$ %ug that (oul$ lea$ to inaccurate $ecimal calculations.
""-"1 Ne( eature
Version: 1.0.3
Date: 2003-08-0+
Re'isions inclu$e$: rom 53 to "5
Revision Change type Description
"3 Ne( eature 8n'oices can %e $o(nloa$e$ as a single PD. ile ollo(ing " $ierent ilters
"2 Enhancement
"1 Ne( eature
"0 Ne( eature
51 Enhancement
Version: 1.0.2
Date: 2003-01-03
Re'isions inclu$e$: rom 2" to 5"
Revision Change type Description
5" Enhancement
3+ Ne( eature
31 Ne( eature Pa-ments can no( %e $elete$ i the- are not lin7e$ to an- in'oice
33 Bug i!
3" Buil$ 0rocess
33/35 Bug i!
Version: 1.0.1
Date: 2003-0"-03
Re'isions inclu$e$: rom 2 to 25
Revision Change type Description
2 Bug i! .i!e$ %ug that (oul$ 0re'ent e$ition o certain or$ers.
)n- ta! item (ill %e calculate$ ater all the 0re'ious items are calculate$/
inclu$ing 0ercentage items.
) 0a-ment no( hol$s the e!act amount that o each in'oice that is 0a-ing/ as
(ell as the $ate the 0a-ment (as a00lie$ to an in'oice. 8t is no( 0ossi%le/ rom
the :28/ to >un$o> a 0a-ment to an in'oice. )n e!isting 0a-ment (ith %alance
can also %e lin7e$ to an ar%itrar- in'oice.
6he list o in'oices in the 0rocess re'ie( it>s no( sorte$ %- the organi&ation
name. 6his ma7es the re'ie( easier to $o (hen the list is e!tensi'e.
8n'oices no( ha'e their o(n contact inormation/ instea$ o using the one rom
the customer. 6hereore/ their contact inormation is historical.
) com0an- can $eci$e i it (ants to allo( its customers to e$it their o(n
contact inormation. 6his is $one (ith a ne( 0reerence.
6he list o items (hen creating a ne( or$er (as not sorte$. 8t is no( %- the
item>s $escri0tion.
6he installation 0rocess $oesn>t nee$ the $ata%ase connection inormation to
%e 0resent in D%illing.0ro0erties an- more.
8nclu$e initiali&ation scri0ts or multi0le $ata%ase engines an$ change the
$eault in the %inar- $istri%ution to an alrea$- initiali&e$ ?-0ersonic $ata%ase
ha'ing a one-time or$er (ith a 'alue in >antici0ate$ months> (oul$ thro( an
e!ce0tion $uring the %illing 0rocess.
6he %uil$ 0rocess no( 0re-com0iles the *SP iles an$ inclu$es the resulting
classes in the %inar- $istri%ution to a'oi$ reCuiring the *a'a SD< or users.
6he action relate$ to users shoul$ not 'ali$ate the orm %ean.
6he s-m0tom (as that clic7ing on a user lin7 on the in'oice $etails 0age (oul$
result on a e!ce0tion.
6his (as intro$uce$ recentl- as a %ug/ it ha$ %e (or7ing (ell until them.
Sheet1
Page 13
3 remo'e trailing s0aces rom the user name an$ 0ass(or$ $uring login.
+/ 10/ 11 Ne( eature
15 Bug i!
1"/ 20 Ne( eature
18/ 1+ Ne( eature
21 Ne( eature )llo(s or reco'er- o a lost 0ass(or$ in the login 0age
=inor
im0ro'ement
)llo( e$ition o login names @the actual change (as to 'ali$ate the ne( login
name. Bithout this/ changing login names (as im0racticalA
Pass(or$ length 'ali$ation is consistent %et(een the login 0age an$ the user
e$ition 0age.
#lari- 0a-ment>s list %- a$$ing the result column an$ e!clu$ing aile$ attem0ts
rom the customer>s list
Pa-ments: =a7e them e$ita%le (hen not lin7e$ to in'oices an$ ha'e %een
manuall- entere$.

You might also like