Distributor of data balanced
Hello
I installed BDD on my local machine (32 bit) and created a SSIS by using this, it works fine without problem.
When I deployed in our staging environment, I get an error when I run the job.
Error:
The component is missing, not registered, no expandable or missing required interfaces. Component ' data balanced, clsid distributor could not be created and the error code returned 0 x 80070005 "access denied". ". Make sure that the component is registered correctly.
I installed this in the staging environment but still getting the same error.
Tags: Windows
Similar Questions
-
Hello! Please help me with the following - I need to look at the balance of the achievements of know how many achievements left, but can't find where the information is. The report I downloaded does not have these data.
You can buy the achievement here.
-
11.1.2.3 - data loading planning?
Hello
Another question from newbie - beginner to 11.1.2.3 for which generous points are once more available; I checked the manuals for 11.1.2.3. but do not believe they have removed this feature available in earlier versions of the planning, can someone confirm please?
In the previous version of the planning (10.x) he used to be a GUI tool based which facilitated the data and mapping the data transformations for easy loading of data in Hyperion Planning without using a tool such as the ODI via flat files or table of database (no disorders, built around Hyperion 'API') from other sources.
Is it equivalent to 11.1.2.3. and if so someone can tell me the navigation path please?
As said I have reviewed manuals and as said I don't think I'm following = > load utility contour, FDM Data Integrator adapter, architect of Management Performance.
But it may be "planning hierarchical Load", can anyone confirm if this is the case (the manual is sketchy to say the least) and if so provide path navigation or even better, a link to a simple example...
n. b. I keep loads of metadata (members, properties members, parent / child et al) and balance data (balances in cubes loading).
If it isn't available in Hyperion Planning the form I describe there is no reason NOT to apply the rules of loading EAS to manage data and load balances?
Thank you very much
Robert.
You could try to launch the Foundation > configure the web server option in the Configurator of the EMP.
See you soon
John
-
How to calculate stock data aging
How to calculate inventory aging of data:
On top of the data, balance the stock of data is produced * 525 * by subtracting CRD_QTY from DRB_QTY. Now his result of aging from 18 September 2011 "should be like this:"_*PRS_DTE*_ _*PRD_COD*_ _*PRD_TYP*_ _*DRB_QTY*_ _*CRD_QTY*_ 15/07/2011 2012001234 1 100 0 15/08/2011 2012001234 1 200 0 16/08/2011 2012001234 1 0 50 15/06/2011 2012001234 1 125 0 15/09/2010 2012001234 1 150 0
Can I get this SQL result? I do not want to write cursors and loops to get the above given the result even if it is possible._*PRD_TYP*_ _*PRD_COD*_ _*90 Days Stock*_ _*Less than 90 and from the start of year Stock*_ _*2010 Stock*_ _*2009 Stock*_ ...and so on upto previous 5 years 1 2012001234 300 125 100 0 ...
Hello
kamranpathan wrote:
Dear Frank, thank you again for an impeccable answer. Sorry for a delay feedback coz I was sick of a fever. I tested the provided query u n that has worked well. but I did not understand then u points marked the end of the answer of the urs:Prs_date is a DATE: don't try to INSERT a VARCHAR2 value into a DATE column.
If 20/SEP/2011 ' is not the correct format, so what fix the Date Format?
In Oracle SQL, anything inside single quotes is a VARCHAR2. (There is an exception; I'll be back later.)
"a,"
'2' and
"the square root of 9'.
are all inside single quotes, so they are VARCHAR2s, not numbers. A human being who sees these chains might think of figures, but they are still VARCHAR2 strings and not numbers.
20/SEP/2011 '.
'September 21, 2011', and
'Yesterday '.
are all inside single quotes, so they are VARCHAR2s, not DATEs. A human being who sees these chains might think of DATEs, but they are still VARCHAR2 channels and not dates.
When you use the wrong data type (for example, when you use a VARCHAR2 in a place where we expect a DATE) Oracle will try niot very hard to trigger an error. It will try to convert a DATE VARCHAR2. Sometimes it can work, other times it cannot. It is never a good idea to expect that such implicit Conversion will work; You must always use the correct data type instead. For example, the prs_dte of the aging_test table column is a DATE. When you say:INSERT INTO aging_test (prs_dte) VALUES (x);
Oracle expects x as a DATE, so do not put some other datatype as a VARCHAR2 in place of x.
The TO_DATE function returns a DATE, so a correct is to INSERT a line in aging_test:INSERT INTO aging_test (prs_dte) VALUES (TO_DATE ('20/SEP/2011', 'DD/MON/YYYY'));
This is an example of a +Explict Conversion +. The TO_DATE function expects two arguments to be VARCHAR2s, and that's exactly what they are in the example above: the two arguments are of the literal string, enclosed in single quotes.
There is an exception, as I mentioned. When the DATE keyword (or TIMESTAMP) comes immediately before the first single quote, then single quotes, everything that comes between them and the keyword itself form a DATE literal (or a literal STAMP, but I'll just talk about DATEs in the future). The stuff between single quotes must be in YYYY-MM-DD format, otherwise you will get an error. So another acceptable way to enter a row in the aging_test table is:
INSERT INTO aging_test (prs_dte) VALUES (DATE '2011-09-20');
It is only as good as in the example above (those used TO_DATE), and has the same results. You can use any you like.
the age_prd can never be ' 'Less than 90 and from 01/01/2011'.
Yes my dear, in my case that I really need this period of aging, I don't know why, but sometimes, being a service Department (IT), we fullfuil insensitive logic of user.
Remember how BUSINESS works.
When you sayCASE WHEN c1 THEN r1 WHEN c2 THEN r2 END
the c1 State is evaluated first. If c1 is set to TRUE, then the CASE expression returns r1, and the rest of the CASE expression is not evaluated.
What happened in this CASE of expression, where x is a NUMBER?CASE WHEN x > 0 THEN 'Positiv' WHEN x = 2 THEN 'Zwei' END
This CASE expression will never return 'Zwei', because the condition "x = 2" is just a special case of the prior"x > 0". If this CASE expression is executed when x = 2, then the 'x > 0' condition is evaluated, it turns out be TRUE, and "Positiv" is returned. The following condition is not even considered.
In the expression you have posted:` Case When Age.Prs_Dte Between (Sysdate - 90) And Sysdate Then '90 Days' When Age.Prs_Dte Between (Sysdate - 61) And Trunc(Sysdate, 'RRRR') Then 'Less than 90 and from 01/01/2011' ...
the value 'less than 90 and since 01/01/2011' will never be returned. the condition "Age.Prs_Dte between (Sysdate - 61) and Trunc (Sysdate, 'RRRR') ' is a more narrow condition that" Age.Prs_Dte between (Sysdate - 90) and Sysdate. Any SYSDATE value which translates by "Age.Prs_Dte between (Sysdate - 61) and Trunc (Sysdate, 'RRRR')" TRUE will as a result in the previous state, "Age.Prs_Dte between (Sysdate - 90) and Sysdate" being TRUE.
If you need an expression BOX which will return sometimes 'less than 90 and since 01/01/2011', then do not use the one you posted. I don't know what you should use, because I do not understand your business needs. Post some sample data (CREATE TABLE and INSERT statements for a table with the columns prs_dte and sys_date), display the results you want sample data and explain how you get these results from these data, and someone will help you write a CASE expression that produces these results.
Only use "date3 BETWEEN date1 AND date2" when date1 and date3 are always midnight.
I really did not understand what point completely.
Sorry, I wasn't very clear. What I meant is that a lot of people make mistakes in using BETWEEN with DATEs, because they forget that all DATEs include hours, minutes, and seconds. If the hours, the mionutes and seconds all arrive at 0, then BETWEEN works the way they expect. When the hours, the minutes and seconds are not all 0, then these people are often confused.
For example, in my time zone is currently about 17:58 September 23, 2011, so at present, nor this condition:SYSDATE BETWEEN TO_DATE ( 'JAN/01/2011', 'MON/DD/YYYY') AND TO_DATE ( 'SEP/23/2011', 'MON/DD/YYYY')
or this condition
SYSDATE BETWEEN TO_DATE ( 'SEP/24/2011', 'MON/DD/YYYY') AND TO_DATE ( 'DEC/31/2011', 'MON/DD/YYYY')
is set to TRUE. Which can be confusing.
If change us one to tell us "SEP/24"instead of "SEPT. 23." /', then it would be a point in time (that is midnight on 24 September) when the above two conditions were TRUE. Which can be confusing.
Similarly, if we leave "SEP/23 ' in the first condition and change the second condition to say" SEP/23 ' rather than ' SEP/24 ', then there is also a point in time when both conditions are TRUE.»»» Which can be confusing.
I admit it is subtle and can be difficult to understand if you don't really understand how work DATEs.
If all goes well, it is easy to understand: don't use not BETWEEN with DATEs. The results are not what you expect if you don't really understand how work DATEs. -
to get the average balance of an account
Hello all :),.
I have the table according to 'account_details '.
account balance transaction_date
1 100 1/1/2011
1 200 1/5/2011
1-100 1/20/2011
500 1 31/1 / 2011
1 200 3/3/2011
2 100 6/2/2011
account-> account number
Balance-> This account balance
transaction_date-> date of the transaction.
I am required to calculate the average balance for each account for each month of the current year given only positive balances only. Phew! try to get any easier...
ex: account = 1
AVG (for January) balance = [100 * (5-1 + 1) + 200 * (31-5 + 11) + 500 * (31-31 + 1)] / 31
(see-100 was ignored)
AVG (for Feb) balance = 500 * 28] / 28
I need to display the account number, the month and the year and the average balance for that month. [for all 12 months of the date of today ' hui]
Thanks in advance for all the geniuses out there :)
PS I am using oracle 10 g
Published by: user12288152 on April 8, 2011 12:51 AMHello
Whenever you have a problem, please post CREATE TABLE and INSERT statements for your sample data and also to post the results desired from these data. It's great to describe the results, but don't forget to actually post them, too.
Here are the results you want?` ACCOUNT A_MONTH AVG_BALANCE ---------- --------- ----------- 1 01-JAN-11 196.77 1 01-FEB-11 500.00 1 01-MAR-11 260.00 2 01-FEB-11 100.00 2 01-MAR-11 100.00
Always tell what version of Oracle you are using. The following query will work in Oracle 10 (or higher).
A way to do what you asked is:
(1) to generate a list of all the dates in whioch you are interested
(2) - outer join this list to your real data (balances only)
(3) use the analytical LAST_VALUE function to copy each subsequent dates with NULL balance balance (I called this effective_balance)
(4) take the average, per month
It'sWITH all_dates AS ( SELECT start_date + LEVEL - 1 AS a_date FROM ( SELECT DATE '2011-01-01' AS start_date , DATE '2011-03-10' AS end_date FROM dual ) CONNECT BY LEVEL <= end_date + 1 - start_date ) , daily_balance AS ( SELECT TRUNC (da.a_date, 'MONTH') AS a_month , de.account , LAST_VALUE (de.balance IGNORE NULLS) OVER ( PARTITION BY de.account ORDER BY da.a_date ) AS effective_balance FROM all_dates da LEFT OUTER JOIN account_details de PARTITION BY (de.account) ON de.transaction_date = da.a_date AND de.balance > 0 ) SELECT account, a_month , AVG (effective_balance) AS avg_balance FROM daily_balance GROUP BY account, a_month HAVING COUNT (effective_balance) >= 1 ORDER BY account, a_month ;
Step (1) is made in the first auxiliary request, all_dates.
Both steps (2) and (3) are made in the following subquery, daily_balance.
Step (4) is made in the main query. This can be done in the same query as step (3), because the aggregate functions are calculated before analytical functions in the same query.Of course, you don't have to encode in the start_ hard and end_dates, as I did above. You can switch to the query into variables, or them are derived from data in the tabel and/or SYSDATE or any combination of methods.
Published by: Frank Kulash, April 8, 2011 08:39
Added to the explanation. -
Question about Equallogic snapshots.
Hello forum
I could not confirm this, but instant never need to commit anything to the basic volume?
Lets say I have 10 snapshots and delete the oldest? There will be a load of e/s to validate these instant changes?
Also, if someone could point me to any type of indepth explanation of this technique of snapshot, I would be interested to read all that.
Thank you!
N ° current data are already on the base volume. There is nothing to commit. Only if you are completely restoring a volume from a snapshot will be there in writing for the base volume.
On the site of Equallogic Support KB:
Solution title TABLE: how the snapshot reserve space is allocated and used
Solution details Snapshot Reserve Allocation and use
-------------------------------------
In a series group PS, snapshots can protect against errors, of a volume
virus or the database. A cliché represents the content of a volume
at the time you created the snapshot. Creating a snapshot does not disturb
access to the volume, and the snapshot is instantly available allowed
iSCSI initiators.
Before you can create snapshots for a volume, you must allocate space (called
snapshot pool) for snapshots. You set the value of the snapshot reserve
When you create or modify a volume. Snapshot reserve benefits from the same
as the volume of the pool data.
When snapshot data consume entire supply snapshot, the Group remove is
the oldest snapshots to free up space for new images or sets the volume and
snapshots offline, according to the policy you selected for instant recovery
space.
The functionality for creating snapshots is called hybrid allocate when writing.
Operation of sharing and snapshot of the page
-----------------------------------
A PS Series Group organizes the physical storage into logical segments called pages.
Each page is composed of several logical blocks. This is similar to the way file
systems combine areas of physical disk in 'clusters' or 'chunks '. Each page has
a reference count which records the number of volumes and snapshots that share
the page.
When you create a volume, the group creates an internal table, called the volume
table, which contains pointers to pages that use the volume. When you create
a snapshot of a volume, the group creates a snapshot table by making a copy of
the volume table, which is usually an operation in memory that the Group
run in a transactional manner. For each page of volume in use, the support group increases the
reference count to indicate that the volume and the snapshot share page.
Because the group does not move or copy the data or allocates a new pages, photos
are fast and efficient.
Reserve of the snapshot stores the differences between the data on the volume and snapshot data
(in addition to differences between the data of multiple snapshots). When you
first create a snapshot, the page for the volume and the snapshot tables are
In brief identical copies and the snapshot consumes no snapshot
reserve. A reading of the same logical block of the volume application or the
snapshot returns the same data because the application is reading from the same page.
However, if you write a page that has a volume and a snapshot of share, snapshot
reserve is consumed.
Here's a simplified example of a snapshot operation. In general, no.
additional I/o operations are needed to manage the data volume or snapshot.
However, other internal operations can occur due to virtualization and
data balancing on berries of the PS Series.
If an application performs a write to 8 KB for a volume containing a snapshot, the
Group:
1. determine what page is modified by the write operation.
2 - If the page is not shared, writes the data to the page.
3. If the page is shared:
. (a) allocates a new page of disk space and reduces the instant to reserve
. the volume of a single page.
. (b) update the page of volume table to point to the newly allocated page.
. (c) mark the newly allocated page as having new data on the volume and the references of the
. original page for unchanged data.
. (d) writes the data to the new page.
When writing is complete, if you read the data on the volume, you have access to the
new page and new data. However, if you read the same logical block of the
Instant, you get the original data, because the snapshot will always point towards the
original page. Similarly, if you set a snapshot online, write to the snapshot.
feature hybrid write protects the original data volume by allocating
a new page for the new snapshot data.
Only the first page of writing to a volume shared (or snapshot) consumes additional
snapshot reserve. Each subsequent entry is considered identical to a writing on a
non-shared the page because the original data are already protected.
Functionality similar to hybrid allocate when writing is used in cloning operations.
However, unlike when you create a snapshot, cloning a volume immediately
consumes space additional group. If a clone is moved to another pool, data
is copied during the operation of moving pool.
Restoring a Volume from a snapshot
----------------------------------
Because of the layout table, restore a volume from a snapshot is very
quick. First of all, the group automatically creates a snapshot of the volume by copying
the volume table to a new table of snapshot. Then the Group transposes the page tables
the volume and the snapshot you selected for the restore operation. NO.
additional space is required, and no data is moved.
Deletion of Volumes and Snapshots
------------------------------
Because volumes and snapshots to share pages, if you delete a volume, you
automatically remove all the clichés associated with the volume.
You can manually delete snapshots (for example, if you need more of)
snapshot data). In addition, the group can delete snapshots automatically in the
following situations:
1 - failure instant free reserve. If the snapshot data consume the snapshot
. reserve, the group either deletes the oldest snapshots to free up space for new
. snapshots or sets the volume and snapshots in offline mode, according to the policy
. you have chosen for the snapshot space recovery.
2 - maximum number of snapshots, created from an agreed timetable. If you set up a
. timetable for the creation of snapshots, you can specify the maximum number of
. photos you want to keep. Once the program creates the maximum number
. clichés, the group will delete the oldest snapshot for planning
. to create a new snapshot.
Snapshot are deleted in the background queue. The group travels
the snapshot page table and decremented the reference count on every shared page.
Any page that has a zero reference count is released into free space. Pages
with a zero reference count are not released because they are shared with
the volume or other snapshots.
Because stereotypes can be automatically deleted, if you want to keep the
given to a snapshot, you can clone the snapshot.
Reserve snapshots use agreement
------------------------------------
The snapshot reserve is consumed only if you write a shared volume or snapshot
page. However, it is difficult to establish a correlation between the amount of data written in one
volume (or snapshot) with the amount of instant reserve consumed as a result.
especially if you have multiple snapshots.
Because the pages consist of several logical blocks, size e/s and distribution
volume merge affect overall performance of e/s in addition to the snapshot
reserve its use.
For example, do much written about a narrow range of logical blocks in a volume
consumes a relatively low amount of reserve of the snapshot. This is because as Scripture
the same logic block more than once, does not require not additional snapshot
reserve.
However, doing random number wrote a range of logical blocks in a
volume can consume a large amount of reserve of the snapshot, because many other
pages are affected.
In general, use instant reserve depends on the following:
1. number of entries that occur in the volume (or snapshot) and at least one
. snapshot exists. In general, more Scriptures tend to use more snapshot reserve.
. Although multiple writes to the same logical block do not require additional
. space.
2 - the range of logical blocks, on which occur the Scriptures. Written in a wide range of
. logical blocks tend to use more instant reserve written in a narrow
. rank, because more of the written word are to different pages.
3. number of snapshots of the volume and timing of the write operations. Most
. snapshots that you create more snapshot reserve is necessary, unless there is
. few entries on the volume or snapshots.
4 - age of snapshot. Snapshots older tend to consume more snapshot reserve only
. the clichés of recent because the group must retain the original data for a
. longer time.
Design Snapshot reserve
-----------------------
You cannot create snapshots until you book instant space. Snapshot reserve
is set as a percentage of the reserve volume (space) for the
volume.
When you create a volume, by default, the volume uses instant group-wide
reserve adjustment. (The reserve in the scale default setting is 100%. You
can change this default value.) You can change the reserve snapshot setting when you
create a volume or later, even if the volume is in use.
Although the snapshot reserve is not used until the volume or writing snapshot occur, it
is consumed immediately free pool space. For example, if you create a
fully allocated (not thin provisioned) 200 GB volume and specify a snapshot of 50%
pool of reserve, free space is immediately reduced to 300 GB (200 GB for the volume
reserve and 100 GB for Snap reserve), even if there are no pages in use.
Therefore, before you create a volume, you should consider how many snapshot
reserves, if any, to assign to the volume. The reserve of the snapshot set to zero (0)
If you do not want to create snapshots.
The optimal size of the snapshot reserve depends on the amount and type of
changes in the volume and the number of shots you want to keep.
By example, if you set the snapshot reserve 100%, and then create a snapshot.
You can write to each byte of the volume without missing snapshot
reserve. However, if you create another snapshot and then write in each byte of
the volume, the first snapshot is deleted in disk space available for the new snapshot. If
you set the instant reserve at 200%, there would be a sufficient reserve of snapshot
for the two snapshots.
A very conservative strategy in terms of instant reserve sizing is to put the snapshot
book value at 100 times the number of shots you want to keep. This
guarantees that keep you at least the number of snapshots, regardless of the
the number of entries on the volume. However, this strategy is generally allocates
book an excessive amount of snapshot, because that rarely crush you all the
the data in a volume during the lifetime of a snapshot.
The best way to instant size reserves is to assign an initial value to the reserve
and watch how instant you can keep over a period of time specified under a
normal workload. If you use tables to create snapshots, allow the
calendar of work for several days.
To get an initial value for a snapshot reserve volume, you must estimate
the quantity and the type of entries in volume and the number of snapshots, you want
keep. For example:
-If you wait a few Scriptures or writings which are concentrated in a narrow range
. logical blocks and you want to keep only a few shots, start with a value
. 30%.
-If you wait several entries or entries that are random in a wide range of
. logical blocks and you want to keep more than a few shots, start with a value
. 100%.
If the snapshots are deleted until you reach the desired number of snapshots,
increase the percentage of snapshot reserve. If you reach the desired number
shots without consuming much of the instant free reserve, decrease the
percentage of reserve snapshot. Continue to follow instant reserve and
adjustments as needed.
How Thin Provisioning button Snapshot Reserve
----------------------------------------------
The snapshot reserve is based on a percentage of volume reserve (allocated space
a volume). For a volume fully provisioned, the reserve volume is equal to the
stated volume size. However, a thin volume put into service, the volume of reserve
is initially very inferior to the reported size (default is subject to minimum volume
10% of the reported size) and increases as the written volume occur.
If you change a thin volume supplied in a volume fully provisioned, the
amount of reserved snapshot increases automatically, because the volume of reserve
increase in the size of the stated volume.
If you change a volume of fully provisioned to thin-provisioned, the amount of
snapshot of reserve decreases automatically, because the volume of reserve declines.
However, if the snapshot resulting reserves will be too small to store all the
existing snapshots, the group will automatically increase the instant reserve
percentage of value that preserves all existing snapshots.
Reducing the use of instant reserve
-------------------------------
Over time, you can reduce the use of instant reserve by periodically (for example,
Once a month) defragmentation of databases and file systems. Defrag operations
try to consolidate segments of files in a volume and, consequently, to reduce the scope
logical blocks addresses used in the pages of the volume.
Defragment the data read operations from one place and then write data to a new
location. So increased use of instant reserve during and immediately
after defragmentation, because existing snapshots will use more of the usual
amount of the snapshot reserve. However, snapshots created after defragmentation
operation must use less instant reserve, because the data on the volume are more contiguous.
When a volume is highly fragmented, potential reduction of the snapshot reserve
use can be dramatic, especially after removing the large before you defragment
snapshots. Defrag operations can also reduce the I/O load on the group,
because the contiguous data makes more efficient i/o operations, in order to improve the
e/s overall performance.
Latest defragmenters are good to reduce the fragmentation that is not seeking to be
too thorough. Some defragmenters also try to combine the inactive data
further restricting the likelihood of changes to shared pages. However, are not
Defragment too frequently.
Sector alignment may also affect the use of snapshot of the space, especially in
larger volumes. File systems must be correctly aligned with the sector. It comes
described in technical reports for VMware and Windows environments.
-
In-depth accounting application
Hi all
Hi all
Thank you for your time in advance. I created a challenge for myself by myself and need some sort of solution.
Accounting requires that the payment be recognized during the month when transportation is provided, not when the actual payment was made. E_MONTH of FAC_SUMMARY is SERVICE_MONTH.
Line of the company of the company and its activities tends to identify the accounting principles. Payment is completely irrelevant but included to see the differences in methodology. Payments in the FAC_PAYMENTS table should only be added to the F_ID level and then assign to the FAC_SUMMARY E_MONTH.
Fields (HIST_PAYMENT, HIST_BALANCE_AFTER_PAYMENT, HIST_BALANCE, PAYMENT_DUE_BALANCE) described on OUTPUT should be generated before determining the payments.
This is a portal for F001.
F001 has a total 53 000 payments. These payments must allocate FAC_SUMMARY F001s positive PAYMENT_DUE_BALANCE to any E_MONTH.
For example:
@ 2010-11-01
BALANCE = 10 000
HIST_BALANCE = SUCCESSFULLY BALANCE since it is the first month, 0 + 10 000 = 10 000
= PAYMENT must be CALCULATED = 10 000
HIST_PAYMENT = SUCCESSFULLY BALANCE since it is the first month PAYMENT = 10 000 =
PAYMENT_DUE_BALANCE = PAYMENT 10 000 HIST_BALANCE-HIST_PAYMENT = 0-10 000 = 10 000
@ 01/12/2010
BALANCE = - 5000
HIST_BALANCE = BALANCE ACCUMULATED, 10000 +-(5000) IS 5 000
PAYMENT = 0 bcz PAYMENT_DUE_BALANCE is 5, 000
HIST_PAYMENT = ACCUMULATED BALANCE 10 000 + 0 = 10 000
PAYMENT_DUE_BALANCE = HIST_BALANCE - HIST_PAYMENT = 5 000-10 000 = - 5 000
@ 01/01/2011
BALANCE = 5000
HIST_BALANCE = BALANCE ACCUMULATED, 10000 + (-5000) + 5 000 = 10 000
PAYMENT = 0 bcz PAYMENT_DUE_BALANCE is 0
ACCUMULATED BALANCE = 10 000 + 0 HIST_PAYMENT 0 PLUS 10 000
PAYMENT_DUE_BALANCE = HIST_BALANCE - HIST_PAYMENT = 10 000 - 10 000 = 0
@ 01/04/2011
BALANCE = 40000
HIST_BALANCE = ACCUMULATED BALANCE, 10000 + (-5000) + 5 000 +-(20000) + 3000 + 40000 = 33 000
PAYMENT = 23 000 bcz PAYMENT_DUE_BALANCE is 23,000
HIST_PAYMENT = ACCUMULATED BALANCE 10 000 + 0 + 0 + 0 + 0 + 0 = 10 000
PAYMENT_DUE_BALANCE = HIST_BALANCE - HIST_PAYMENT = 33 000 - 10 000 = 23 000
HIST_PAYMENT can never be greater than the TOTAL of PAYMENTS in FAC_PAYMENTS.
There may be any negative payment however; carrries before negative balance in HIST_BALANCE.
Please note that any activity besides BALANCE 0 months > SYSMONTH-4.
Please let me know if I can provide any more detail.
OutputDROP TABLE FAC_SUMMARY ; CREATE TABLE FAC_SUMMARY ( F_ID CHAR(4), E_MONTH DATE, BALANCE FLOAT ) ; COMMIT ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-NOV-2010', 10000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-DEC-2010', -5000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-JAN-2011', 5000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-FEB-2011', -20000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-MAR-2011', 3000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-APR-2011', 40000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-MAY-2011', 10000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-JUN-2011', -80000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-JUL-2011', 6000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-AUG-2011', 15000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-SEP-2011', -12500 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-OCT-2011', 7500 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F001', '01-NOV-2011', 100000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-NOV-2010', -10000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-DEC-2010', 5000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-JAN-2011', -5000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-FEB-2011', 20000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-MAR-2011', -3000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-APR-2011', -40000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-MAY-2011', -10000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-JUN-2011', 80000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-JUL-2011', -6000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-AUG-2011', -15000 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-SEP-2011', 12500 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-OCT-2011', -7500 ) ; INSERT INTO FAC_SUMMARY ( F_ID, E_MONTH, BALANCE ) VALUES ( 'F002', '01-NOV-2011', -100000 ) ; COMMIT ; DROP TABLE FAC_PAYMENTS; COMMIT ; CREATE TABLE FAC_PAYMENTS ( F_ID CHAR(4), P_MONTH DATE, PAYMENT FLOAT ) ; COMMIT ; INSERT INTO FAC_PAYMENTS ( F_ID, P_MONTH, PAYMENT ) VALUES ( 'F001', '25-FEB-2011', 10000 ) ; INSERT INTO FAC_PAYMENTS ( F_ID, P_MONTH, PAYMENT ) VALUES ( 'F001', '25-MAR-2010', 25000 ) ; INSERT INTO FAC_PAYMENTS ( F_ID, P_MONTH, PAYMENT ) VALUES ( 'F001', '25-AUG-2011', 15000 ) ; INSERT INTO FAC_PAYMENTS ( F_ID, P_MONTH, PAYMENT ) VALUES ( 'F001', '25-OCT-2011', 3000 ) ; INSERT INTO FAC_PAYMENTS ( F_ID, P_MONTH, PAYMENT ) VALUES ( 'F002', '25-JUN-2011', 7000 ) ; INSERT INTO FAC_PAYMENTS ( F_ID, P_MONTH, PAYMENT ) VALUES ( 'F002', '25-AUG-2011', 3000 ) ; INSERT INTO FAC_PAYMENTS ( F_ID, P_MONTH, PAYMENT ) VALUES ( 'F002', '25-OCT-2011', 27000 ) ; COMMIT ;
Published by: 788729 on November 21, 2011 10:16F_ID E_MONTH BALANCE HIST_BALANCE PAYMENT HIST_PAYMENT PAYMENT_DUE_BALANCE F001 11/1/2010 10,000 10,000 10,000 0 10,000 F001 12/1/2010 -5,000 5,000 0 10,000 -5,000 F001 1/1/2011 5,000 10,000 0 10,000 0 F001 2/1/2011 -20,000 -10,000 0 10,000 -20,000 F001 3/1/2011 3,000 -7,000 0 10,000 -17,000 F001 4/1/2011 40,000 33,000 23,000 10,000 23,000 F001 5/1/2011 10,000 43,000 10,000 33,000 10,000 F001 6/1/2011 -80,000 -37,000 0 43,000 -80,000 F001 7/1/2011 6,000 -31,000 0 43,000 -74,000 F001 8/1/2011 15,000 0 0 0 0 F001 9/1/2011 -12,500 0 0 0 0 F001 10/1/2011 7,500 0 0 0 0 F001 11/1/2011 100,000 0 0 0 0 F002 11/1/2010 -10,000 -10,000 0 0 -10,000 F002 12/1/2010 5,000 -5,000 0 0 -5,000 F002 1/1/2011 -5,000 -10,000 0 0 -10,000 F002 2/1/2011 20,000 10,000 10,000 0 10,000 F002 3/1/2011 -3,000 7,000 0 10,000 -3,000 F002 4/1/2011 -40,000 -33,000 0 10,000 -43,000 F002 5/1/2011 -10,000 -43,000 0 10,000 -53,000 F002 6/1/2011 80,000 37,000 27,000 10,000 27,000 F002 7/1/2011 -6,000 31,000 0 37,000 -6,000 F002 8/1/2011 -15,000 0 0 0 0 F002 9/1/2011 12,500 0 0 0 0 F002 10/1/2011 -7,500 0 0 0 0 F002 11/1/2011 -100,000 0 0 0 0
Hello
Sorry, I'm still not sure I understand.
788729 wrote:
Line of the company of the company and its activities tends to identify the accounting principles. Payment is completely irrelevant but included to see the differences in methodology. Payments in the FAC_PAYMENTS table should only be added to the F_ID level and then assign to the FAC_SUMMARY E_MONTH.Explain exactly how fac_payments is used in this problem. I think I have good results for this sample data wihout using fac_payments at all.
Fields (HIST_PAYMENT, HIST_BALANCE_AFTER_PAYMENT, HIST_BALANCE, PAYMENT_DUE_BALANCE) described on OUTPUT should be generated before determining the payments.
Why? I seems to have gotten good results of calculation of payments prior to hist_payment or balance_due_payment. In the new release, there is no column of hist_balance_after_payment.
Output
F_ID E_MONTH BALANCE HIST_BALANCE PAYMENT HIST_PAYMENT PAYMENT_DUE_BALANCE F001 11/1/2010 10,000 10,000 10,000 0 10,000 F001 12/1/2010 -5,000 5,000 0 10,000 -5,000 F001 1/1/2011 5,000 10,000 0 10,000 0
This is a portal for F001.
F001 has a total 53 000 payments. These payments must allocate FAC_SUMMARY F001s positive PAYMENT_DUE_BALANCE to any E_MONTH.
For example:
@ 2010-11-01
BALANCE = 10 000
HIST_BALANCE = SUCCESSFULLY BALANCE since it is the first month, 0 + 10 000 = 10 000
= PAYMENT must be CALCULATED = 10 000Of course it must be calculated. The question is: how is calculated.
HIST_PAYMENT = SUCCESSFULLY BALANCE since it is the first month PAYMENT = 10 000 =
PAYMENT_DUE_BALANCE = PAYMENT 10 000 HIST_BALANCE-HIST_PAYMENT = 0-10 000 = 10 000@ 01/12/2010
BALANCE = - 5000
HIST_BALANCE = BALANCE ACCUMULATED, 10000 +-(5000) IS 5 000
PAYMENT = 0 bcz PAYMENT_DUE_BALANCE is 5, 000
HIST_PAYMENT = ACCUMULATED BALANCE 10 000 + 0 = 10 000I do not understand / balance figures at this stage of 10,000 and * 5 000 * (not 0).
PAYMENT_DUE_BALANCE = HIST_BALANCE - HIST_PAYMENT = 5 000-10 000 = - 5 000
...It's not pretty, but it gets the results you requested:
WITH got_hist_balance AS ( SELECT f_id , e_month , balance , SUM (balance) OVER ( PARTITION BY f_id ORDER BY e_month ) AS hist_balance FROM fac_summary -- WHERE ... -- If you need any filtering, put it here ) , got_payment AS ( SELECT hb.* , CASE WHEN hist_balance <= 0 THEN 0 ELSE GREATEST ( 0 , hist_balance - GREATEST ( 0 , NVL ( MAX (hist_balance) OVER ( PARTITION BY f_id ORDER BY e_month ROWS BETWEEN UNBOUNDED PRECEDING AND 1 PRECEDING ) , 0 ) ) ) END AS payment FROM got_hist_balance hb ) , got_hist_payment AS ( SELECT p.* , SUM (payment) OVER ( PARTITION BY f_id ORDER BY e_month ) - payment AS hist_payment , CASE WHEN e_month < ADD_MONTHS ( TRUNC (SYSDATE, 'MONTH') , -3 ) THEN 1 ELSE 0 END AS b -- Black-out factor FROM got_payment p ) SELECT f_id , e_month , balance , b * hist_balance AS hist_balance , b * payment AS payment , b * hist_payment AS hist_payment , b * (hist_balance - hist_payment) AS payment_due_balance FROM got_hist_payment ORDER BY f_id , e_month ;
Output:
` PAYMENT HIST_ HIST_ _DUE_ F_ID E_MONTH BALANCE BALANCE PAYMENT PAYMENT BALANCE ---- ----------- -------- -------- -------- -------- -------- F001 01-Nov-2010 10,000 10,000 10,000 0 10,000 F001 01-Dec-2010 -5,000 5,000 0 10,000 -5,000 F001 01-Jan-2011 5,000 10,000 0 10,000 0 F001 01-Feb-2011 -20,000 -10,000 0 10,000 -20,000 F001 01-Mar-2011 3,000 -7,000 0 10,000 -17,000 F001 01-Apr-2011 40,000 33,000 23,000 10,000 23,000 F001 01-May-2011 10,000 43,000 10,000 33,000 10,000 F001 01-Jun-2011 -80,000 -37,000 0 43,000 -80,000 F001 01-Jul-2011 6,000 -31,000 0 43,000 -74,000 F001 01-Aug-2011 15,000 0 0 0 0 F001 01-Sep-2011 -12,500 0 0 0 0 F001 01-Oct-2011 7,500 0 0 0 0 F001 01-Nov-2011 100,000 0 0 0 0 F002 01-Nov-2010 -10,000 -10,000 0 0 -10,000 F002 01-Dec-2010 5,000 -5,000 0 0 -5,000 F002 01-Jan-2011 -5,000 -10,000 0 0 -10,000 F002 01-Feb-2011 20,000 10,000 10,000 0 10,000 F002 01-Mar-2011 -3,000 7,000 0 10,000 -3,000 F002 01-Apr-2011 -40,000 -33,000 0 10,000 -43,000 F002 01-May-2011 -10,000 -43,000 0 10,000 -53,000 F002 01-Jun-2011 80,000 37,000 27,000 10,000 27,000 F002 01-Jul-2011 -6,000 31,000 0 37,000 -6,000 F002 01-Aug-2011 -15,000 0 0 0 0 F002 01-Sep-2011 12,500 0 0 0 0 F002 01-Oct-2011 -7,500 0 0 0 0 F002 01-Nov-2011 -100,000 0 0 0 0
I suspect that I get some of these numbers in a very round way point and could do better if I understood better business requirements.
-
I have a table as follows
trandate accno closing balance
12/01/09 01, 2000
01 28/11/09 1500
11/28/09 02, 4500
11/28/09 04, 1200
11/27/09 01, 2300
26/11/09 06, 3300
11/26/09 02, 1300
11/26/09 03, 1300
11/25/09 01, 4600
11/20/09 04, 4700
20/11/09 06, 7120
10/10/09 01, 5200
22/10/09 02, 1000
I need to get a report as follows for each accno.
Date column should contain dates of months 1st registration. This means that if today's 15-dec-09, then it will be
as:
Date
----
1st November 09
2 November 09
------
------
14-dec-09
And in the balance column, please fill this days closing balance. If this closing balance is not days
available, so we fill it to balance available before.
It will be like this
accno Date balance
11/01/09 01, 5200
11/02/09 01, 5200
11/03/09 01, 5200
-- -------- ----
-- ------- -----
11/27/09 01, 2300
01 28/11/09 1500
01 29 / 11/09 ' 1500
01 30/11/09 1500
-- -------- ----
-- ------- -----
12/01/09 01, 2000
-- -------- ----
-- ------- -----
14/12/09 01, 2000
02 SO NOW...
Please let me know if yu need any clarification on the issue.
TNX for your time!Hello
According to you requirements:
user10313295 wrote:
...
Date column should contain dates of months 1st registration. This means that if today's 15-dec-09, then it will beas:
Date
----
1st November 09
2 November 09
------
------
14-dec-09The last date in the data sample are in April 2009, well before November 1, 2009, which explains why sales are all NULL
It is reasonable to have the latest balance of before 1 November in situations like this.
Perhaps the best way to encode using COALESCE (LAG..) instead of just LAG:WITH all_days AS ( SELECT TRUNC (SYSDATE) - LEVEL AS a_date FROM dual CONNECT BY LEVEL <= TRUNC (SYSDATE) - ADD_MONTHS ( TRUNC (SYSDATE, 'MONTH') , -0 -- 1 ) ) SELECT x.cust_ac_no , a.a_date , COALESCE ( LAST_VALUE (avl_balance IGNORE NULLS) OVER ( PARTITION BY x.cust_ac_no ORDER BY a.a_date ) , ( SELECT MAX (avl_balance) KEEP (DENSE_RANK LAST ORDER BY avl_date) FROM il_actbs_adjavl_balance WHERE cust_ac_no = x.cust_ac_no AND avl_date < SYSDATE ) ) AS balance FROM il_actbs_adjavl_balance x PARTITION BY (x.cust_ac_no) RIGHT OUTER JOIN all_days a ON a.a_date = x.avl_date ORDER BY x.cust_ac_no , a.a_date ;
COALESCE does not evaluate its 2nd argument if it is not, so COALESCE will be more effective than the NVL.
You could also do the scalar subquery as 3rd argument offset.
If you have whole month where you have to call this scalar under request (as you do in the sample data), it would probably be more effective to calculate the balance of the last before November 1st, once per account, in a separate subquery and include the results of this auxiliary request with all_days.If you want the query ends at a given point in time, rather than yesterday, then use the next of this endpoint instead of SYSDATE.
-
Active ADF data service does not work when the load balancer compresses
Hello
I have Active Data service table in a page.
After you enable the setting cache and turned on compression on the hardware load balancer, Active data service table refresh no more in the application.
We use F5 for balancing load and data compression.
Pointers?
RyanYou can check if your F5 loadbalancer has enabled text compression.
Disable compression of text. -
Balance sheet for a YEAR between two dates in the dashboard
Hello
Could someone help me please how can I calculate the 'balance of the CDA' between two different dates, who is invited to the dashboard? Means: we have an "effective date" and a "prior date" as a promt in the dashboard user who selects dynamically. When displaying in the report, it should show us the "CDA balance" between the two dates selected dynamically by users in the dashbowrd prompt. Please suggest.
Thanking you,
BK.Now that you understand the concept, it is easy to change the constant (i.e., 2011-01-01) to a variable.
1) start with your repository variable that contains your current date: CURRENT_DATE
(2) TIMESTAMPADD (SQL_TSI_DAY, DAYOFYEAR (CURRENT_DATE) *-1 + 1, CURRENT_DATE) is the SQL to get the first day of the year.
Replace the hardcoded hard 01/01/2011 with the SQL above and now it will work for the beginning of the current year. You can change the SQL code for the beginning of a given year.
Ex. TIMESTAMPADD (SQL_TSI_YEAR-1, TIMESTAMPADD (SQL_TSI_DAY, DAYOFYEAR (CURRENT_DATE) *-1 + 1, CURRENT_DATE)) you will get the start of "last year." This should help you with your problem.
Now that you have everything, please mark the appropriate messages 'useful' and 'proper' and then mark the thread as answered and others if you are looking for a similar solution can easily find the answer. Thanks and good luck!
Edited by: David_T November 28, 2011 07:56
-
The financial accounts and balance, recurring balance, Data Types and type
Hi one can me claire for the following?
1. in HFM account Types, we can find balance and Balance of what it means? is it completely related to finance and accounts topics? If yes give me some good examples of
understand in what concerns to HFM where this need will come from?
2. What are the financial accounts that we use in HFM? do we use to load? If yes what is the format, like Excel or data form?
3. What is the number of head? what his purpose in what concerns the HFM? in what situations we must think and remind about it, means in making the activity which HFM we can understand
on this subject simply?(1) balance and Balance recurring contain data that is not from one period to the other accumulated and are not translated. Effective is typically a balance, such as Square Footage, to provide information to real estate, for example.
(2) non-financial accounts are usually those who are not focused on the currency, such as the staff, units sold, the number of customers, days sales outstanding, numbers fo new customers, etc. These data entry can be no other data is loaded,-either directly by loading in HFM, through forms, grids, reviews, smart view or FDM, among others that I am sure.
(3) effective is often a metric for growth. It is often used in reports, such as revenue or margin by staff. Even if you buy a company, remains a ratio between revenue and the staff, so it's a good measure for organic and acquired growth.
-Chris
-
How to get unpaid balance 30 days from date selected
Hi all
I have to get the UPB (outstanding balance) of the table every day and I need to check the UPB of last month. There are daily and monthly tables separate. And according to the user enter the range of dates as the value of the setting that I need to get the monthly table.
for example if the user enters the date range 01/08/2011 to 15/08/2011 while I check for the month of July monthly table to get the month previous UPB.
Help, please
Thank youHave you tried the add_months function?
This would allow you to find the date of one month before the given value, then you can truncate to get the previous month. I have not tested, but I guess that the code would be something like as below:
select trunc(add_months(to_date('15-08-2011','dd-mm-yyyy'),-1),'MON') from dual; 01-JUL-11
I don't know the layout of your tables, but I hope it helps.
Kerri
Published by: Kerri_Robberts on August 17, 2011 17:14
-
ERPi load balance GL data only or line GL objects
Hello
Can load us data in to the ERPi using GL balance GL objects also or only
Sri...ERPI sources of data in the GL_Balances table.
-
Summary after call message balance or usage data
I have lenovo s 820 it is not whose record after making a call, message or by using the data connection, how do I turn it on...
try to install USSD to notification fm google game it solve my problem even in P780
https://play.Google.com/store/apps/details?ID=com.Aeon.ussdtonotificationof course restart handset after installation
-
Hello.
The distributor of DELL that I chose, sold me a laptop, well, but when I connect to the DELL Web site with my service tag security seems to have started 4 months before my purchase.
I need DELL Europe or DELL WE directly contact to complain about my Distributor. I am from Bulgaria, and DELL are not present in Bulgaria (directly), only to resellers.
I searched and searched for DELL website to find a way to complain, but all that it redirects me is the list of the resellers for my country. Of course, I need to ignore them and pass over them to complain about the specific dealer.
There must be a way to tell DELL what one of their tricks on me tire dealers.
Help, please.
Hi martinch8002,
You have purchased from a Distributor, who bought this pc four months ago. The guarantee starts when the laptop was purchased. I don't know may be modified on this something, but transfer your question in the forum we see customer service.
Maybe you are looking for
-
Hello is there a way to boot the OS (WIN8.1) [system status: closed]without first pulling the screen upward and push the power button? FYI: I use an external connected HDMI screen/monitor! I know the typical rest on keyboard through BIOS, but use tha
-
Everytime I try to log in to Skype, it won't let me log on and just said "Can Skype can't Connect." At first I thought I was putting in my password or something, so I changed it, but that did not help. Then, I thought it would work only if I tried a
-
Accidentally deleted driver Atheros on Satellite C50-B-14Z
I accidentally deleted Atheros from my computer and now it is not wireless. I tried to download it again support Toshiba but there is no option for my type of laptop. Can someone help me fix this please?
-
Games full screen is being kept to a minimum when I open them.
When I try to open a game in full screen, it becomes almost immediately downplayed. This does not happen at the games, I play in windowed mode, like WoW, but games such as Warcraft 3, Age of Empires and the Fable are all affected. I tried to close al
-
C:\windows\ionplpl2.dll error message
This error code is displayed whenever I start my computer!