Rounding data on an approval query
Hello everyone...
As You know, taxes have increased in Mexico so we created new tax codes and accounts, and since I can't block any of the old taxcodes/acounts until all previous documents have ben closed/paid the only option I could think of was creating an approval process for all documents using the previous tax codes, since I can't create an approval query based on document lines/rows, I created it comparing the document's tax vs the document's total ($$). The old taxes were 10% and 15% these are the percentages I want to "block" using the approval process.
Here's the query I created
IF (($($27.0.number) = $($22.0.number).15) OR ($($27.0.number) = $($22.0.number).1) ) SELECT 'TRUE'
The query/approval works, but there is a problem: SBO rounds to 2 decimals, so for a $ 124.15 sale the 15% tas would be 18.6225 but the tax ammount field would show 18.62 only which by being different in 0.0025 passes the criteria...
How can I make this query work with rounded data?, I tried using round($($22.0.number)) but when then I always get a "Cannot comit transaction" error..
Thanks in advance
Hugo
Hugo,
I am glad my suggested solution worked. I try to answer only questions that I know will work.
It does not help in answering on a trail and error basis which unfortunately happens a lot of times as the enthusiasm in answering keeps away the focus.
Depending on your decimal places definition in General Setting the numbers would be rounded.
Using CAST to Varchar will also preserve the decimals but the numeric value will get converted.
Best wishes
Suda
Similar Messages
-
How to store data from a complex query and only fresh hourly or daily?
We have a report which runs quite slow (1-2 minutes) because the query is quite complicate, so we would like to run this query daily only and store in a table so for those procedures that need to use this complex query as a subquery, can just join to this table directly to get results.
However, I am not sure what kind of object I should use to store data for this complex query. Is data in global temp table only persist within transaction? I need something that can persist the data and be access by procedures.
Any suggestions are welcome,
CheersThank you for your reply. I looked at the materialized view earlier on, but have some difficulties to use it. So I have some questions here:
1.The complex query is not a sum or aggregate functions, it just need to get data from different tables based on different conditions, in this case is it still appropriate to use meterialized view?
2.If it is, I created one, but how to use it in my procedure? From the articles I read, it seems I can't just query from this view directly. So do I need to keep the complex query in my procedure and how the procedure will use the meterialized view instead?
3. I also put the complex query in a normal view, then create a materialized view for this normal view (I expect the data from the complex query will be cache here), then in the procedure I just select * from my_NormalView, but it takes the same time to run even when I set the QUERY_REWRITE_ENABLED to true in the alter session. So I am not sure what else I need to do to make sure the procedure use the materialized view instead of the normal view. Can I query from the Materialized View directly?
Below in the code I copied from one of the article to create the materialized view based on my normal view:
CREATE MATERIALIZED VIEW HK3ControlDB.MW_RIRating
PCTFREE 5 PCTUSED 60
TABLESPACE "USERS"
STORAGE (INITIAL 50K NEXT 50K)
USING INDEX STORAGE (INITIAL 25K NEXT 25K)
REFRESH START WITH ROUND(SYSDATE + 1) + 11/24
NEXT NEXT_DAY(TRUNC(SYSDATE), 'MONDAY') + 15/24
enable query rewrite
AS SELECT * FROM HK3ControlDB.VW_RIRating;
Cheers -
Error while trying to retrieve data from BW BEx query
The following error is coming while trying to retrieve data from BW BEx query (on ODS) when the Characters are more than 50.
In BEx report there is a limitation but is it also a limitation in Webi report.
Is there any other solution for this scenario where it is possible to retrieve more than 50 Characters?
A database error occured. The database error text is: The MDX query SELECT { [Measures].[3OD1RJNV2ZXI7XOC4CY9VXLZI], [Measures].[3P71KBWTVNGY9JTZP9FTP6RZ4], [Measures].[3OEAEUW2WTYJRE2TOD6IOFJF4] } ON COLUMNS , NON EMPTY CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( CROSSJOIN( [ZHOST_ID2].[LEVEL01].MEMBERS, [ZHOST_ID3].[LEVEL01].MEMBERS ), [ZHOST_ID1].[LEVEL01].MEMBERS ), [ZREVENDDT__0CALDAY].[LEVEL01].MEMBERS ) ........................................................ failed to execute with the error Invalid MDX command with UNSUPPORTED: > 50 CHARACT.. (WIS 10901)Hi,
That warning / error message will be coming from the MDX interface on the BW server. It does not originate from BOBJ.
This question would be better asked to support component BW-BEX-OT-MDX
Similar discussion can be found using search: Limitation of Number of Objects used in Webi with SAP BW Universe as Source
Regards,
Henry -
Key Date variable; Interval in query properties for Time Dep. Masterdata
Hi,
I've been searching on the forum, and I think I know the answer already, but still I'd like
to ask you all whether it's possible to create a Key Date Interval variable to be used in the query properties.
As far as I can see you can only report by a single key date used in the query properties field for time dependant masterdata, but my customer has asked me to investigate the possibility to enter a date range.
As all masterdata is time dependant I don't see how this would work, but if someone can shine a light on this maybe there is a solution available?
Thanks for your help.
M.Hi marc
I understand your problem.
I had an idea for a workaround.
If you can create master data compounded with Valid from and Valid to both of these characteristics , how the query is computing
the keyfigures.
Every change in valid from or valid to is unique for the system in this case.
Thanks
N.Ganesh -
Can we use Data Pump to export data, using a SQL query, doing a join
Folks,
I have a quick question.
Using Oracle 10g R2 on Solaris 10.
Can Data Pump be used to export data, using a SQL query which is doing a join between 3 tables ?
Thanks,
AshishHello,
No , this is from expdp help=Y
QUERY Predicate clause used to export a subset of a table.
Regards -
Approval Query for a specific customer group
Dear Experts,
Following is the scenario, customer deals with whole sale and retail customers group. The client wishes to ensure that If the whole sales customer group account balance greater than zero then while making a sales order or invoice it should trigger approval.
SaravananHi Saravnan......
Thy this Approval Query and just put the Group Code for your customer in this group code's inverted comma....
SELECT Distinct 'TRUE' From OCRD T0 Where T0.Balance>0 and GroupCode=' '
And T0.CardCode=$[ORDR.CardCode.0]
If above does not work then use below...
SELECT Distinct 'TRUE' From OCRD T0 Where T0.Balance>0 and GroupCode=' '
And T0.CardCode=$[$4.0.0]
Regards,
Rahul -
How to compare dates in a select query in open sql
Hi
How can I retrieve data pertaining to a specified date using a select query.
I have inserted date using the following code:
String dateString = "2009-03-11";
java.sql.Date date = java.sql.Date.valueOf(dateString);
PreparedStatement stmt =con.prepareStatement("insert into DATEACCESS"
+ "(DATETEST)"
+ "values (?)");
stmt.setDate(1,date);
stmt.executeUpdate();
How can I pass this in a select query,the below mentioned query did not fetch me any results.
Select * from DATEACCESS where DATETEST='2009-03-11'Hi
Has ur date problem resolved ?
If not resolved u can do the following
As u already have sql date today declared . You want to get the data depending on that date
As ur query is
if( today != null)
String query2 = select * from DATEACCESS where DATETEST<= ?
PreparedStatement ps = conn.prepareStatement(query2);
ps.setDate(1,today)
ResultSet rs = ps.executeQuery();
While(rs.next)
////// Here u will get data from query u needed ///
If this also does not work just print the date and check in which format is it returning u .
Regards
Anuradha Rao
Edited by: Anuradha Rao on Mar 20, 2009 10:16 AM -
No data to retrieve. Query 1
Hi All,
I tried to run a query in Infoview and the following following error occured
No data to retrieve. Query 1
any suggestions are welcome. Thanx
ShashiThanks Denis,
I will look in to it.
Shashi
Edited by: Shashi02 on Aug 13, 2010 10:52 PM -
No data to retrieve in Query 1 for particular User
Error: No data to retrieve in Query 1 for particular User
Hello,
We have webi report in 3.1 version which is running fine in Infoview for particular user.
But when same report is send into Inbox of other user and if user try to run it in infoview it is giving below error.
"No data to retrieve in Query 1"
All the security and group member level settings for both the user are exactly same. What could be the reason for this behaviour.
ThanksCan you please check user is part of which group in enterprise receipts group.
Also please check dynamic receipts tab of publication where data can be filtered
Thanks,
Swapnil -
Can I use SYSDATE in the WHERE clause to limit the date range of a query
Hi,
Basicaly the subject title(Can I use SYSDATE in the WHERE clause to limit the date range of a query) is my question.
Is this possible and if it is how can I use it. Do I need to join the table to DUAL?
Thanks in advance.
SteliosAs previous poster said, no data is null value, no value. If you want something, you have nvl function to replace null value by an other more significative value in your query.<br>
<br>
Nicolas. -
Date Format in a query of (attribute Object)
Hello to all experts and BW users,
I have question regarding the format of a date characteristic in my query.I was wondering if it is possible to show a date field in the following substraction: 31/12/2006 in 2006.
I want to change the format(dd/mm/yyyy)in(yyyy)
The query (report) will show you the lease contract expiries in the future. Example:
NB Year
9 2006
8 2007
4 2008
Many thanks in advance!
BoykeHi,
I think there are two possible ways to do it -
1. manage it in Query (BEX) with VBA Macro
2. add Calyear to your cube & let its value be determined automatically from 0calyear & use it in query.
hope it helps.
regards
VC -
hi
Can You Please suggest how minimal we can correct this at the query output
My coming output for the date field at the query is
01/28/2008
04/27/2006
06/1/2006
05/16/2006
Desired Output for the query field at the query is
1/28/2008
4/27/2006
6/1/2006
5/16/2006
Zeroes should not be present can you quickly help me in this regardHi
Check conversion routine on info object maintainance .
Regards,
Chandu. -
Date formats in BI Query designer
Hi gurus
We have enhanced our cube 0sd_co3 where we have taken a number of dates such as Railway Receipt date, Actual Goods Issue date, LFdat, thses are only few examples. Now our reporting scenerio demands reporting based on thses dates as given in our time dimensions such as
YYYYMM Qty
but not based on the date mapped in the time dimension in the cube. but based on these dates
in oracle we have the to_char function through which we change the format of date while writing sql query
so if there is any option of changing date format in query without changing the modelling
Pl suggest
Thanks
ShivaniHi,
You can create new characteristic of char number 6 . Include it in the data target. Populate it via a update rule ( Routine).
Use input as standard date (Railway Receipt date) and then pass the value to the new char in the required format (YYYYMM). Follow same thing for other dates also.
Let me know if you have doubt.
Regards,
Viren -
SELECT records larger than date specified in sub query
Dear All
Thank you for your attention.
I would like to select records larger than date specified in sub query
query should be something like the following
SELECT my_order_number, my_date, my_task
FROM MYTB
WHERE my_order_number IN order_no AND my_date > date (SELECT order_no, date FROM MySubQueryResult)
(it is incorrect)
Sub query result:
order_no | date
A1 | 2014-12-21 09:06:00
A2 | 2014-12-20 09:07:00
A3 | 2014-12-20 08:53:00
A4 | 2014-12-20 08:57:00
MYTB:
my_order_number | my_task | my_date
A1 | T1 | 2014-12-21 09:06:00
A1 | T2 | 2014-12-22 10:01:00
A2 | T1 | 2014-12-20 09:07:00
A3 | T2 | 2014-12-20 08:53:00
A3 | T4 | 2014-12-21 09:30:00
A3 | T8 | 2014-12-23 20:32:00
A4 | T6 | 2014-12-20 08:57:00
expected result:
my_order_number | my_task | my_date
A1 | T2 | 2014-12-22 10:01:00
A3 | T4 | 2014-12-21 09:30:00
A3 | T8 | 2014-12-23 20:32:00
Any ideas? Thanks.
swivanHi,
try this
SELECT my_order_number, my_date, my_task
FROM MYTB
WHERE my_order_number IN (SELECT order_no FROM MySubQueryResult)
AND my_date > (SELECT date FROM MySubQueryResult)
Alternatively, you can also make use of joins to achieve the same.
Please mark solved if I've answered your question, vote for it as helpful to help other users find a solution quicker
Praveen Dsa | MCITP - Database Administrator 2008 |
My Blog | My Page
Dear Praveen Dsa
Thanks for your reply, but order_no and date are paired and related, cannot separate.
each order have its own date, so it is not working
Best Regards
swivan -
Problem with user defined approval query
Hi
Sorry me for my english
I have a problem with approval query
DECLARE @DocDate DATETIME
SET @DocDate = (SELECT $[OINV.DocDate])
IF (DATEDIFF(DAY,@DocDate,GETDATE())) != 0
BEGIN
SELECT DISTINCT 'TRUE'
END
the query works with the previous invoices, but today's invoices show me a error colud not commit transaction
Can Help me?
Thanks
Felipe LoyolaHi Felipe Loyola,
Try this:
SELECT DISTINCT 'TRUE' FROM OINV T0
WHERE DATEDIFF(DD,T0.DocDate,GETDATE()) != 0 AND T0.DocNum = '$[$8.0.0\]'
Thanks,
Gordon
Maybe you are looking for
-
Inventory cube non cumulative KF displaying incorrectly.
Hi I have created a inventory cube which is a copy of 0IC_C03, fed from a DSO which has the all the Material documents. I have intitialised using the BX extraxctor to the cube, then loading data from r/3 via the dso. Have MP on top of inventory and r
-
How to remove printing of page 2 on smartforms
Hi, I have two pages on smartforms, the 1st page contains the customer letter and the second page contains the table of articles placed on the main window. If the internal table passed has no rows page2 is still being printed with blank or no data. W
-
Pictures galleries viewable with FireFox 3.0
Hi ! I put some galleries on my site. When I see them with Safari everything is ok, but when I tried to see them with FireFox 3.0 (from my Mac or from a PC at work), the galleries have no pictures !!!! What's happening ? Here are some of my galleries
-
No_adapter_engine_found
Hi, the issue after upgrade XI SP16, I have been looking at all of contents from this site, but still having this problem. here is my test. i can see all adapters on adapter monitoring. 1. JDBC2JDBC, call adapter(receiver) on payload of SXMB_MONI, er
-
Photos visible in iPhoto application but not accessible for upload
Any help anyone can provide with this is greatly appreciated. I took pictures of a friends wedding and have been trying to order a photobook as a gift. I decided to try to use iPhoto to make the book. I don't use iPhoto very often and at the start of