Vous êtes sur la page 1sur 14

LEDGER

Ledger Freeze:
In both the Discoms Ledger should be freezed, on or before first week of the month...
Generally, Ledger will be freezed for previous month in the first week of the current month.
eg: This is the Dec-2015, so in this month we will freeze the Ledger for Nov-2015.
HERE I'M CONSIDERING MONTH AS 'NOV-2015', SECTION AS 'PENUMULURU' AND
SLAB_TYPE AS 'SLAB', DEPENDING ON THE ISSUE YOU NEED TO CHANGE THOSE
PARAMETERS
For Ledger Freeze End User need to tally the following details:
SPDCL:
1) Ledger Demand of the particular month with BBA demand of previous month, means assume that now we
are freezing the Ledger for Nov-2015,
So, we need to tally the demand of Nov-2015 in ledger freeze screen with the demand of OCT-2015 in the
BBA report for the particular section
and particular slab type.
2) Ledger payments of the particular month with the payments in FL Talley report and payments in our
system with the payments in their existing system(161).
NPDCL:
1) Ledger Demand of the particular month with BBA demand of particular month, means assume that now
we are freezing the Ledger for Nov-2015,
So, we need to tally the demand of Nov-2015 in ledger freeze screen with the demand of NOV-2015 in the
BBA report for the particular section
and particular slab type.
2) Ledger payments of the particular month with the payments in FL Talley report.
The below points are same for both the Discoms:
3) Ledger RJs of the particular month with the RJs in RJ Check List of the particular month.
4) Ledger Opening Balance of the particular month with the Ledger Closing Balance of the previous month.
5) Security Deposit (SD) in Ledger freeze screen with the SD in system (Means, end user will take the SD
from previous month Ledger and will add
all the particular month transactions against SD, this should be tallied with SD. )
6) Total No.of Consumers in Ledger Abstract with the consumers in the system (Means, end user will take
the total count from previous month Ledger and will
add the no.of consumers which are released during the particular month and this should be matched with
the count in the Ledger).
7) The total of Opening balance,Demand,Payment,RJ should be equal to the Closing Balance(CB) of the
particular month.

Ledger Freeze Issues:


The following are the various issues which can be raised by end user or might occur in our system:
1) Ledger demand and BBA demand is not getting tallied:
In this case we need to verify the demand in Ledger and demand in BBA with following Queries...
SELECT SUM(CMD) FROM CM_LEDGER_SP
WHERE SECTION='PENUMULURU'
AND SLABNSLAB='SLAB'
AND BILLMONTH='NOV-2015'
;
SELECT SUM(CMD) FROM CM_BBA_SP
WHERE SECTION='PENUMULURU'
AND SLABNSLB='SLAB'
AND COLLMONTH='OCT'
AND COLLYEAR='2015'
;
Both the demands should get tallied, if there is any difference then verify, whether is there any Slab to
Nslab or section changes
in the particular section in OCT-2015, NOV-2015 months with the following Query:
SELECT * FROM CM_BBA_SP T1, CM_LEDGER_SP T2
WHERE T1.ACCT_ID=T2.ACCT_ID
AND T1.SECTION='PENUMULURU'
AND (T1.SLABNSLB!=T2.SLABNSLAB OR T1.SECTION!=T2.SECTION)
AND T1.COLLMONTH='OCT'
AND T1.COLLYEAR='2015'
AND T2.BILLMONTH='NOV-2015'
;
If there is a change,then the difference amount should be tallied with demand of the above services,
hence, end user need to tally the amount
demand for the entire ERO or SLAB and NSLAB together.
If there are no changes (or) the difference amount is not tallying with the Consumer's demand for whom
changes have been done, then we need to verify
the Ledger and BBA with the following Query:
SELECT ACCT_ID,CMD FROM CM_LEDGER_SP
WHERE SECTION='PENUMULURU'
AND CMD>0
AND BILLMONTH='NOV-2015'
MINUS
SELECT ACCT_ID,CMD FROM CM_BBA_SP
WHERE SECTION='PENUMULURU'
AND COLLMONTH='OCT'
AND COLLYEAR='2015'
;
If any Acct_Id's displayed from the above query, then we need to do the further analysis for the
consumers. If there is any problem with BBA, we need to rectify the issue and again need to run the
CM_LDGR batch.

2) Payments in Ledger Freeze screen are not tallied with the FL Tally report:
In this case, we need to verify for payment errors means, whether payments are properly distributed or
whether any errors are there in
CM_PAY_ST, CM_PAY_THD_PTY_REQ, CM_ONLINE_PAYMENT, CM_PAY_LEGACY tables or
whether payment came to CM_PAY table or not.
If we find any errors, we need to rectify the error to make the payment into our system and need to
update the update_dt (or) complete_dttm (or) upload_date to sysdate
in order to get the payments into Ledger(As, last five day transactions will only be processed in Ledger
Batch, do not touch the payment date at all).
If no issue is there with our system, then need to verify in MIS reports whether they are displaying the
correct information or not.
If no errors are there and in MIS reports also all the data is coming but still error is coming, then in
that case verify whether any new consumer got payment against advance
during its release, generally Advance payments will not be displayed in FL Talley Report, but Advance
payment will be considered in Ledger as EC head.
If any advance payment came and it is the only difference between Ledger and FL Talley, then you can
ask the consumer to freeze the Ledger as it will cause any problem in future.

3) Total RJ amount in Ledger Freeze screen is not tallied with the RJ CheckList:
In this case, we need to verify whether any RJ (or) RJ Cancellation is not effected to Ledger. To verify
this, download the RJ CheckList for the particular ERO, Slab type and for the particular month.
In general, there are two types of RJ's 1) CRJ, 2) DRJ, both the RJ amounts should get tallied with the
Ledger.
You can also verify in DB with following Queries:
SELECT SUM(CRJ),SUM(DRJ) FROM CM_LEDGER_SP
WHERE SECTION='PENUMULURU'
AND SLABNSLAB='SLAB'
AND BILLMONTH='NOV-2015'
;
SELECT RJTYPE,SUM(NVL(TOTRJ_AMT,0)-NVL(ACD,0)) RJ FROM CM_MNLRJ_TRN T1,
CM_CONS_MASTER_LT T2
WHERE T1.USCNO=T2.USCNO
AND T2.SECTION_NAME='PENUMULURU'
AND SLAB_TYPE='SLAB'
AND STATUS IN ('C','F')
AND TOTRJ_AMT>0
AND TO_CHAR(T1.RJDT,'MON-YYYY')='NOV-2015'
GROUP BY RJTYPE
;
If in any case, sum of individual splits are not tallied with the total rj amt in cm_mnlrj_trn table, then
update the totrj_amt column with the folloing Query:
UPDATE CM_MNLRJ_TRN SET
TOTRJ_AMT=NVL(EC,0)+NVL(ED,0)+NVL(EDI,0)+NVL(LPC,0)+NVL(ACD,0)+NVL(FXC,0)+NVL(C
PCG,0)+NVL(CC,0)+NVL(FSA,0)+NVL(OTR,0)+NVL(RECN,0)+NVL(THFT,0)
--SELECT * FROM CM_MNLRJ_TRN

WHERE
NVL(EC,0)+NVL(ED,0)+NVL(EDI,0)+NVL(LPC,0)+NVL(ACD,0)+NVL(FXC,0)+NVL(CPCG,0)+NVL(
CC,0)+NVL(FSA,0)+NVL(OTR,0)+NVL(RECN,0)+NVL(THFT,0)!=TOTRJ_AMT
AND TO_CHAR(RJDT,'MON-YYYY')='NOV-2015'
;
4) Ledger Opening Balance of the particular month is not tallied with the Ledger Closing Balance of
the previous month:
In this case, verify, whether is there any Slab to Nslab or section changes in the particular section in
OCT-2015, NOV-2015 months...
If there is a change,then the difference amount should be tallied with CB of the above services, hence,
end user need to tally the amount
balance for the entire ERO or SLAB and NSLAB together.
If there are no changes (or) the difference amount is not tallying with the Consumer's balance for whom
changes have been done, then we need to find the services which have the difference
with the following Query:
SELECT ACCT_ID,CBTOT FROM CM_LEDGER_SP
WHERE SECTION='PENUMULURU'
AND SLABNSLAB='SLAB'
AND BILLMONTH='OCT-2015'
AND CBTOT!=0
MINUS
SELECT ACCT_ID,TOT_OB FROM CM_LEDGER_SP
WHERE SECTION='PENUMULURU'
AND SLABNSLAB='SLAB'
AND BILLMONTH='NOV-2015'
AND TOT_OB!=0
;
If any Acct_Id's displayed from the above query, then we need to do the further analysis for the
consumers.
5) SD amount is not getting tallied:
In this case, we need to verify the sum of SD in last month and need to add all the transaction which are
done for SD or ACD (for this we have a report in MIS)
and need to tally. If any difference is there, then we need to do the furher analysis.
6) Total no.of consumers are not getting tallied:
In this case, In this case, we need to verify the total count in last month and need to add the count of the
consumers who are released this one month duration (for this we have a report in MIS)
and need to tally, we can get the released consumers count from ci_acct_char or cm_cons_master_lt with
suppl_rel_dt as the particular month....
If all the above six points got tallied, then CB automatically will get tallied.
Ledger Freeze Tallying Query:
SELECT
COUNT(1),SUM(TOT_OB),SUM(CMD),SUM(DRJ),SUM(CRJ),SUM(TOT_PAY),SUM(CBTOT),SUM(S
D) FROM CM_LEDGER_SP
WHERE SECTION='PENUMULURU'
AND SLABNSLAB='SLAB'
AND BILLMONTH='NOV-2015';

TOT_OB+CMD+DRJ-CRJ-TOT_PAY=CBTOT;
When the Ledger is freezed then the same day night EC Split batch will get run, and the end user can
download the Ledger Report.
Before freezing the Ledger, the end user can be able to download the Ledger abstract to talley the Ledger.
Ledger Unfreeze:
To unfreeze the Ledger the following command should be executed in Raja gaaru system, we can unfreeze
the Ledger only from the particular IP address only....
exec led_unfreeze1('SPDCL','NSLAB','333112','MAR-2015');
After unfreezing the Ledger, Ledger batch should get run with 'Y' flag for the particular section for the
particular month, then only the changes will get effected into the Ledger.

CC&B Components of Ledger Screens:


Ledger Freeze Screen:
Menu-> Billing -> Ledger Freeze

Select all the required details and click on Show Details button to navigate to Ledger Freeze screen and after
tallying all OB,Demand, RJ, Pay,CB components then click on 'Freeze' button to freeze the Ledger.

If Ledger is freezed already, then the screen looks like:

Technical Components:
Whenever Ledger Freeze button is clicked, then we will verify whether all the records in the particular
section in CM_LEDGER_MAIN table are in 'C' status or not, if any records are there with 'E' or 'P' status,
then we need to rectify the issue and need to run CM_LDGR batch once again so that 'LD_STATUS' column
should become 'C', then only they can freeze the Ledger, else an error will come stating that 'Ledger data is
incomplete, please contact helpdesk'.
Whenever Ledger has been freezed a record with the following details will be inserted in
CM_LEDGER_FREEZE table:

1)
2)
3)
4)
5)
6)
7)

DISCOM_NAME
SEC_CODE
SEC_NAME
LEDGER_END_DT
LEDGER_FREEZE_DT
SLABNSLAB
BO_DATA_AREA

BO_DATA_AREA contains all the details as of Ledger Freeze time.


LEDGER REPORT:
After the Ledger has been freezed, EC_SPLIT batch will get run on the same day for the sections for which
the Ledger has been freezed, So that end users can download the Ledger Reports.
Menu -> Billing -> Reports

BPA Script: CM_LED_FRZ (All the Ledger Freeze functionality is configured in this Script only)
TABLE:
CM_LEDGER_FREEZE
PORTAL
ZONE
UI MAP
JSP
TABLE

CM_BR_RP
CM_AAO_LED
CM_AAO_LR
ledger.jsp
CM_LEDGER_SP

BATCHES:
1) CMLDGRMN
2) CM_LDGR
3) EC_SPLIT

Ledger Abstract:
Before freezing the Ledger end users will take this report to tally all the information.
Menu -> Billing -> Reports

PORTAL
ZONE
UI MAP
JSP

CM_BR_RP
CM_AAO_LED
CM_AAO_LR
ABS.jsp

TABLE

- CM_LEDGER_SP

BATCH - CM_LDGR

BBA
BBA(Bill Book Absract) :
In everymonth, we will provide the PC to SBM data for all the LIVE(01), DISCONNECTED(03) Status
Consumers for the two discoms depending on the Bill Cycle and Slab types...
End users can download the BBA, only when all the consumers who are in PC to SBM are billed for the
particular section, slab type and bill cycle, BBA can not be downloaded
if any one consumer didn't get billed for the particular section.
Generally, AGL consumers will be given bills for every 6 months, If any AGL consumer is linked to main
consumer(Slab or NSlab) bill will be given along with Main consumer bill, Hence
for AGL consumers there will not be any PC to SBM data.
There are mainly four types of BBA are there:
1) 4-Line BBA
2) 3-Line BBA
3) 2-Line BBA
1) 1-Line BBA
In all the above four BBA's the demand will be same but the details will display will differ, eg: In four
Line BBA we will have more fields when compared three Line BBA..
Menu -> Billing - > Reports

PORTAL
ZONE
UI MAP
JSP's

- CM_BR_RP
- CM_BL_REP
- CM_ALL_REP
- BBA4LINE.jsp(4-Line BBA)
- 3LINEBBAGeneration.jsp (3-Line BBA)
- BBA2REP.jsp(2-Line BBA)
- BBAGeneration1.jsp(1-Line BBA)

TABLE

- CM_BBA_SP

BATCH - CMBBA
Exception Reports:
All the consumers who are billed under exceptional statuses (other than 01,07 status) will come in this
report.
Menu -> Billing -> Reports

PORTAL
ZONE
UI MAP
JSP

CM_BR_RP
CM_BL_REP
CM_ALL_REP
ErgenHiber.jsp (order by ScNo)
ErgenHiberUsc.jsp (order by UscNo)

TABLE

- CM_BBA_SP

Abnormal High/Low Reports:


The consumers which are billed with low or high consumption when compared with avg consumption
comes in this report.
i) Abnormal Low Report:
The consumers who are consuming units less than 30% of the avg consumpion come in this report.
ii) Abnormal High Report:
The consumers who are consuming units greater than 400% of the avg consumption come in this
report.
Menu -> Billing -> Reports

PORTAL
ZONE
UI MAP
JSP

CM_BR_RP
CM_BL_REP
CM_ALL_REP
HiLo.jsp

TABLE

- CM_BBA_SP

PC TO SBM
PC to SBM Errors:
Whenever, PC to SBM batch got completed, we need to verify for the errors using the following queries:
SELECT * FROM CM_PC_SBM_REC
WHERE PC_SBM_UPLD_FLG='E'
AND MON_YEAR='DEC-2015'
;
SELECT * FROM CM_PC_TO_SBM_EXC
WHERE ACCT_ID IN (SELECT ACCT_ID FROM CM_PC_SBM_REC
WHERE PC_SBM_UPLD_FLG='E'
AND MON_YEAR='DEC-2015')
AND BILL_MON='DEC'
AND BILL_YEAR='2015'
;
The following are the various possible errors while preparing PC to SBM data:
1) Opening Read Date and Bill Date in same month:
If end users raise any reading RJ by putting Opng Read date as current month date, in this case this error
will come, there is no rectification for this, in the next month consumer will go for billing.
2) Section Name MissingZone Name Missing (or) Ero Name MissingSection Name MissingZone Name
Missing:
In UscNo first 7-digit(SPDCL),9-digit(NPDCL) are the distribution codes, if this code is not there in
CM_CIS_DIV_AREA_GEO table then this error will come, in this case end user need to change the UscNo
to the correct distribution.
When end user changes the UscNo, then we need to run the CMPC2SBM batch once again. So, that these
consumers will also come for billing.
3) Main query - Data not found:
If service is there in CI_ACCT_CHAR but not there in CM_CONS_MASTER_LT then this error will
come, in this case, we need to verify whether the service is there in CM_CONS_MASTER_LT if it is there
then need to run the PC to SBM batch once again, if it is not there then
we need to run CMMASTER batch and again need to run CMPC2SBM batch.
4) Zero length BigInteger:
If any numeric data type field in cm_cons_master_lt table or in any base table contains a non numeric
value then this error will come, in this case we need to change the value of the field, need to change the code
from where it is coming.
eg: In ci_sp_char one characteristic 'NOPTSMC' is there, it only accepts numerical value(0,1,...) if we will
give any non-numeric value then while preparing billing data, the consumers with this issue will go to
exception. Then we need to update the value to 0 in ci_sp_char and cm_cons_master_lt using the following
Queries:
--UPDATE CI_SP_CHAR SET ADHOC_CHAR_VAL=0
SELECT * FROM CI_SP_CHAR
WHERE SP_ID=:SPID

AND CHAR_TYPE_CD='NOPTSMC'
;
--UPDATE CM_CONS_MASTER_LT SET NO_OF_POINTS=0
SELECT * FROM CM_CONS_MASTER_LT
WHERE USCNO=:USCNO
;

5) Mtr Id is null for spid:


Whenever category change has been done then old SP will be abolished and a new SP will be In Progress
state and the same SP_ID should be there in CM_CONS_MASTER_LT, sometimes due to some issue this
SP_ID(In Progress) will not be there in Master table, Hence, this error will come. In this case we need to
verify whether In SA_SP_CHAR only one
'CM_STS' characteristic is there or not, if there are more than one, then remaining need to be removed,
and CMPC2SBM batch need to be run again, so that these services will also come for billing.
6) Conn load Missing Contracted load Missing (or) Contracted load Missing:
Whenever a consumer released with Load (CONN_LOAD or CONT_LOAD) as ZERO or Load becomes
zero due to master changes, then this issue will come. In this case, we need to put the load as 0.001 in
Service Agreement and Master table or need to inform to the concern ERO to change the Load. After
changing the load to a non-zero value CMPC2SBM batch need to be run once again.
7) Dtr Code Missing:
Whenever DTR code characteristic is not there in CI_SP_GEO table, then this issue will come, in this
case we need to verify why DTR code is not there for the particular consumer and the root cause need to be
identified and rectified, so that the same issue will not be repeated again. Once it is done DTR code in
SP_GEO table and Master table need to updated and CMPC2SBM batch need to be run once again.
8) If a consumer is there in CM_PC_TO_SBM_EXC table with EXC_MSG as null, then once verify whether
any SNMFLAG characteristic is there in CI_SP_CHAR for the particular consumer, if it is there then verify
in CM_SOLAR_RDGS table whether any entry is there with Opng rdg date as the opng rdg dt in
CM_PC_TO_SBM, if any issue is there with it rectify, if there is no 'SNMFLAG' char in CI_SP_CHAR,
then further analysis need to be done to identify the issue.

WHENEVER WE RECTIFY THE EXCEPTION, CMPC2SBM BATCH NEED TO BE RUN FOR THE
PARTICULAR MONTH AND SLAB_TYPE. BEFORE RUNNING THE BATCH WE NEED TO UPDATE
'LAST_UPDT_DT' FIELD IN CM_PC_SBM_REC TABLE WITH SYSDATE USING THE FOLLOWING
QUERY:
--UPDATE CM_PC_SBM_REC SET LAST_UPDT_DT=SYSDATE
SELECT * FROM CM_PC_SBM_REC
WHERE MON_YEAR=:MONYR
AND SLAB_OR_NON_SLAB=:SL
;
IF WE FORGET TO UPDATE THE LAST_UPDT_DT, THEN CMPC2SBM BATCH WILL BE RUN
FOR ALL THE RECORDS IN CM_PC_SBM_REC TABLE FOR THE PARTICULAR MONTH AND
SLAB_TYPE IRRESPECTIVE OF PC_SBM_UPLD_FLG, SBM_PC_UPLD_FLG VALUES(WHICH
SHOULD NOT BE HAPPEND).... SO DON'T FORGET TO UPDATE THE DATE.....

Vous aimerez peut-être aussi