Translation of column in COOIS
Dears,
I 'd like to change the translation of one column in COOIS.
Can you advise how to do this ?
Should I use SE63, which object ?
thanks a lot
KS
yes, you are right..
it is also connected with note 395258
solved..
thanks,
KS
Similar Messages
-
Translation of Columns and Table Names
Hi,
We are starting a large migration project and we have a mix of dutch and english developers.
I was wondering if there is any clever ways to translate column names and table names.
Not physically translate the text but store the english column name against the dutch column name?
I know I could write a view which overlays the table with the english version but I was wondering if there was something a bit cleverer?
Anyway to store multiple meta data against a physical table?
Thanks
RichardI'd tend to agree with Nicolas that you'd generally want all the developers to agree on what a particular object was called rather than having half of them think of it in Dutch and half in English.
On the other hand, it would make sense to me that the comments you create on your objects and tables should be multilingual, i.e.
SQL> create table my_emp (
2 name varchar2(100)
3 );
Table created.
SQL> comment on table my_emp is 'Table containing employee information.
2 Lijst die werknemersinformatie bevat.';
Comment created.(The translation is from babelfish.yahoo so I apologize if it butchers the Dutch).
The developers should be able to see the table and column comments in their IDE of choice and should be able to see what the object represents in their language.
Justin -
Column name of custom columns is possible of translating automatic
In SharePoint 2013 is possible of translating automatic the column name of custom columns with machine translation services or it is necessary create resource files or source site and target site?
Hi,
When you create a column, the name you enter is just a constant string. SharePoint does not do translation based on known words. Internationalization is based on resource files.
Here are the steps I would take for creating international-able columns through the browser:
Create the column with the name you want as the internal name (ie, no spaces or symbols to avoid
_x0020_ and other encoding replacements).
Edit the column by changing the column name to a resource string that you know if defined in each language you want to support.
Here are similar posts, you can use as a reference:
https://social.msdn.microsoft.com/Forums/sqlserver/pt-BR/06742b53-ccc9-4d2c-ac61-fbba37e60be1/how-to-translate-custom-column-names-in-the-target-variation-site-in-sharepoint-2013?forum=sharepointdevelopment
http://sharepoint.stackexchange.com/questions/30226/how-to-display-column-names-in-several-languages-in-sharepoint
Best Regards,
Lisa Chen
TechNet Community Support
Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
[email protected] -
Query to translate one string column by referring to another 2 table
I have 3 table which is
1)RATIO_HISTORY
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ RATIO_ID + RATIO_CRITERIA
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 + (subjek=2 AND gred<=240) OR (subjek=3 AND gred<=240) OR (subjek=4 AND gred<=567) OR (subjek=5 AND gred<=565)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 + (subjek=4 AND gred<=567) OR (subjek=5 AND gred<=565)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2)LKP_SUBJEK
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
SUBJEK_ID SUBJEK
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 + English
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 3 + Chemical
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 4 + Biology
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 5 + Physic
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 6 + History
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 7 + Mathematics
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3) LKP_GRED
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
GRED_ID GRED
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 240 + 1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 567 + 2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 565 + 3
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 568 + D
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
what i want to do is, i want to create a query than can translate the column of Criteria in table ratio_history to look like this;
example: ratio_id=1
(subjek=English AND gred<=1) OR (subjek=Chemical AND gred<=1) OR (subjek=Biology AND gred<=2) OR (subjek=Physics AND gred<=3)
Can anyone help me?
thank you in advance.
Edited by: user5441678 on Mar 17, 2011 7:12 PMHi,
Welcome to the forum!
Whenever you have a question, please post your sample data in a form that people can use to re-create the problem and to test their solutions.
For example:
CREATE TABLE ratio_history
AS
SELECT 1 AS ratio_id
, '(subjek=2 AND gred<=240) OR (subjek=3 AND gred<=240) OR (subjek=4 AND gred<=567) OR (subjek=5 AND gred<=565)'
AS ratio_criteria
FROM dual UNION ALL
SELECT 2, '(subjek=4 AND gred<=567) OR (subjek=5 AND gred<=565)' from dual;
CREATE TABLE lkp_subjek
AS
SELECT 2 AS subjek_id, 'English' AS subjek FROM dual UNION ALL
SELECT 3, 'Chemical' FROM dual UNION ALL
SELECT 4, 'Biology' FROM dual UNION ALL
SELECT 5, 'Physic' FROM dual UNION ALL
SELECT 6, 'History' FROM dual UNION ALL
SELECT 7, 'Mathematics' FROM dual;
CREATE TABLE lkp_gred
AS
SELECT 240 AS gred_id, '1' AS gred FROM dual UNION ALL
SELECT 567, '2' FROM dual UNION ALL
SELECT 565, '3' FROM dual UNION ALL
SELECT 568, 'D' FROM dual;Be sure to mention which version of Oracle you're using. The solution below works in Oracle 10 and up. (I tested it in Oracle 10.2.0.1.0, but it should work in Oracle 10.1 as well.
Regular expressions make it easy to split ratio_criteria up into parts. I assume that every row will have from 1 to 6 pairs of numbers (subjek_id and a gred_id), so we can have up to 7 "items" on each row, counting the text that comes after the last number. That's what the "magic number" 7 is in sub-query cntr. Of course, you can increase that if your real data has more numbers.
WITH cntr AS
SELECT LEVEL AS n
FROM dual
CONNECT BY LEVEL <= 7 -- Or whatever you need
, ratio_items AS
SELECT r.ratio_id
, c.n AS item_num
, REGEXP_SUBSTR ( ratio_criteria, '[^0-9]+', 1, (2 * c.n) - 1) AS subjek_txt
, REGEXP_SUBSTR ( ratio_criteria, '[0-9]+', 1, (2 * c.n) - 1) AS subjek_id
, REGEXP_SUBSTR ( ratio_criteria, '[^0-9]+', 1, (2 * c.n) ) AS gred_txt
, REGEXP_SUBSTR ( ratio_criteria, '[0-9]+', 1, (2 * c.n) ) AS gred_id
FROM ratio_history r
CROSS JOIN cntr c
, translated_items AS
SELECT i.ratio_id
, i.item_num
, i.subjek_txt
|| s.subjek
|| i.gred_txt
|| g.gred AS txt
FROM ratio_items i
LEFT OUTER JOIN lkp_subjek s ON s.subjek_id = TO_NUMBER (i.subjek_id)
LEFT OUTER JOIN lkp_gred g ON g.gred_id = TO_NUMBER (i.gred_id)
SELECT ratio_id
, REPLACE ( SYS_CONNECT_BY_PATH (txt, '~?')
, '~?'
) AS translated_history
FROM translated_items
WHERE CONNECT_BY_ISLEAF = 1
START WITH item_num = 1
CONNECT BY item_num = PRIOR item_num + 1
AND ratio_id = PRIOR ratio_id
ORDER BY ratio_id
, item_num
;Sub-query ratio_items splits each row into 7 parts, each potentially containing some text that comes before the subjek_id, the subjek_id, some text that comes before the grep_id, and the grep_id.
Sub-query translated_items looks up the translations of the ids in the appropriate tables. Outer-joins are used, because the last item will not have any ids, but we still need to preserve its text. This means that if ratio_criteria has an incorrect id, the query will still run; just the incorrect part will be missing.
The main query re-unites the translated items, in order, using SYS_CONNECT_BY_PATH, which requires a delimiter between items. The delimiter must never appear in the strings to be combined. I assumed that the string '~?' will never occur in your real data. You can change that to any string, of any length, if you want. (The individual characters in the delimiter may appear in the text, so it's okay to have ~'s and ?'s, you just can't have a ~ followed immediately by a ?.) We don't actually want a delimiter in this problem, so REPLACE gets rid of it.
Output:
RATIO_ID TRANSLATED_HISTORY
1 (subjek=English AND gred<=1) OR (subjek=Chemical AND gred<=1
) OR (subjek=Biology AND gred<=2) OR (subjek=Physic AND gred
<=3)
2 (subjek=Biology AND gred<=2) OR (subjek=Physic AND gred<=3)Interesting problem! -
Name of a report column instead of her ID
Hello,
Is there in htmldb a function witch return the name of a column report if I have the id of the column ?
I ask this question, because I used the folowing in order to find a sort preference used in a report, for example :
v_preference := 'FSP'||wwv_flow.g_flow_id||
'_P'||wwv_flow.g_flow_step_id||'_R'||v_region_id||'_SORT' ;
v_sort := substr(wwv_flow_preferences.get_preference (v_preference),10) ;
Now, the result in v_sort is : 1 or 1_desc : if my report is sorted on the first column...
but I want to have the name of the column not the Id ?
Thanks.Jina,
The sort preference is only used internally to append an order-by to your query before executing it. It's not always set, so if you reset your preferences, or if you run a report for the first time, it would be NULL. Also, if you click on a heading to sort your report, the value you get depends on when you read that preference, it could be either your previous or current sort column ID. And there's no API available that lets you translate the column ID into a column name.
Regards,
Marc -
ADF BC : using UI Locale to translate data (Steve M. example 95)
hi
In his example 95, Steve Muench suggests an approach to "Change Preferred UI Locale with a Button in the Page".
I have made some minor modifications to this example, using JDeveloper 10.1.3.3.0, in an attempt to make it work with "translated data".
(1) I added a bind variable "LanguageBVar" and an attribute "CalculatedTranslatedDnameAttribute" to "DeptView" with this expression:
nvl(decode(:LanguageBVar, 'en', dname || ' (en)', 'it', dname || ' (it)'), dname || ' (language not supported)')(2) I added this new attribute to the table and the form on TestPage.jspx
(3) I implemented the executeQuery() method in DeptViewImpl.java like this:
public class DeptViewImpl extends ViewObjectImpl
public void executeQuery()
Locale vLocale = getApplicationModule().getSession().getLocale();
System.out.println("DeptViewImpl.executeQuery()"
+ " : getName() = " + getName() + ", vLocale = " + vLocale);
setLanguageBVar(vLocale.getLanguage());
super.executeQuery();
}(4) If I run TestPage.jspx in JDeveloper, my "translated Dname" column shows "translated data" with suffix "(en)".
(5) If I click on "Italian", all the labels change, but my "translated Dname" column still shows "translated data" with suffix "(en)".
(6) After that I added a button to execute "DepartmentListIterator" using an "Execute" binding.
(7) Again, as in (4), I run the page and see the same behaviour and this output on the console:
DeptViewImpl.executeQuery() : getName() = DeptView, vLocale = en
DeptViewImpl.executeQuery() : getName() = DepartmentList, vLocale = en(8) Again, as in (5), I click on "Italian" and see the same behaviour (no extra output on the console in this step).
(9) If I click on the "ExecuteDepartmentListIterator" button, no "translated data" changes on the page, although this line is added on the console:
DeptViewImpl.executeQuery() : getName() = DepartmentList, vLocale = itThe modified version of this application, as described here, is available at (check README.txt):
http://verveja.footsteps.be/~verveja/files/oracle/ChangeLanguageInTheUIForData-v0.01.zip
question:
How can I make this application show "translated data" when changing the UI Locale, as in step (5).
However it is important that a solution for this would be as "non-intrusive" as possible because I would like to be able to use it in an application that has lots of translated data and where the user should be able to change his preferred language on each page.
many thanks
Jan VerveckenThanks for your reply Steve.
In your updated testbindlocale.zip example, the buttons "Italian" and "Inglese" behave as expected. The "TranslatedDname" column has the correct translated data.
So, I modified the example in ChangeLanguageInTheUIForData-v0.04.zip, in a similar way an moved up the call to "super.prepareRender(lfContext)" before the check on the Iterator Bindings in the current Binding Container, like this:
public void prepareRender(LifecycleContext lfContext) {
App app = (App)ELHelper.get("#{App}");
Locale preferredLocale = app.getPreferredLocale();
UIViewRoot uiViewRoot = FacesContext.getCurrentInstance().getViewRoot();
System.out.println("CustomFacesPageLifecycle.prepareRender()"
+ " : preferredLocale = " + preferredLocale
+ ", uiViewRoot.getLocale() = " + uiViewRoot.getLocale());
boolean changedLocale = false;
if (preferredLocale == null) {
app.setPreferredLocale(uiViewRoot.getLocale());
} else {
if (preferredLocale != uiViewRoot.getLocale()) {
// if (!preferredLocale.equals(uiViewRoot.getLocale())) {
System.out.println("CustomFacesPageLifecycle.prepareRender()"
+ " : preferredLocale = " + preferredLocale
+ ", uiViewRoot.getLocale() = " + uiViewRoot.getLocale()
+ " : different so the Locale has changed");
uiViewRoot.setLocale(preferredLocale);
changedLocale = true;
super.prepareRender(lfContext);
if (changedLocale)
DCBindingContainer vDCBindingContainer =
(DCBindingContainer)lfContext.getBindingContainer();
ArrayList vIterBindingList = vDCBindingContainer.getIterBindingList();
for (Object vIterObject : vIterBindingList)
JUIteratorBinding vJUIteratorBinding =
(JUIteratorBinding)vIterObject;
ViewObject vViewObject = vJUIteratorBinding.getViewObject();
// if (vViewObject.getVariableManager().findVariable("LanguageBVar") != null)
if (vViewObject instanceof SessionLocaleBasedVO)
System.out.println("CustomFacesPageLifecycle.prepareRender()"
+ " : calling executeQuery()"
+ " : preferredLocale = " + preferredLocale
+ ", uiViewRoot.getLocale() = " + uiViewRoot.getLocale());
vViewObject.executeQuery();
}(h1) If I run TestPage.jspx, my "translated Dname" column shows "translated data" with suffix "(en)" and I see this output on the console:
DeptViewImpl.executeQueryForCollection() : getName() = DeptView, vParamNV[0] = LanguageBVar, vParamNV[1] = en
DeptViewImpl.executeQueryForCollection() : getName() = DepartmentList, vParamNV[0] = LanguageBVar, vParamNV[1] = en
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = en
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = en : different so the Locale has changed
CustomFacesPageLifecycle.prepareRender() : calling executeQuery() : preferredLocale = en, uiViewRoot.getLocale() = en
DeptViewImpl.executeQueryForCollection() : getName() = DeptView, vParamNV[0] = LanguageBVar, vParamNV[1] = en
CustomFacesPageLifecycle.prepareRender() : calling executeQuery() : preferredLocale = en, uiViewRoot.getLocale() = en
DeptViewImpl.executeQueryForCollection() : getName() = DepartmentList, vParamNV[0] = LanguageBVar, vParamNV[1] = en(h2) If I click on "Italian", my "translated Dname" column shows "translated data" with suffix "(it)" and I see this output added on the console:
CustomFacesPageLifecycle.prepareRender() : preferredLocale = it, uiViewRoot.getLocale() = en
CustomFacesPageLifecycle.prepareRender() : preferredLocale = it, uiViewRoot.getLocale() = en : different so the Locale has changed
CustomFacesPageLifecycle.prepareRender() : calling executeQuery() : preferredLocale = it, uiViewRoot.getLocale() = it
DeptViewImpl.executeQueryForCollection() : getName() = DeptView, vParamNV[0] = LanguageBVar, vParamNV[1] = it
CustomFacesPageLifecycle.prepareRender() : calling executeQuery() : preferredLocale = it, uiViewRoot.getLocale() = it
DeptViewImpl.executeQueryForCollection() : getName() = DepartmentList, vParamNV[0] = LanguageBVar, vParamNV[1] = it(h3) If I click on "Inglese", my "translated Dname" column shows "translated data" with suffix "(en)" and I see this output added on the console:
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = it
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = it : different so the Locale has changed
CustomFacesPageLifecycle.prepareRender() : calling executeQuery() : preferredLocale = en, uiViewRoot.getLocale() = en
DeptViewImpl.executeQueryForCollection() : getName() = DeptView, vParamNV[0] = LanguageBVar, vParamNV[1] = en
CustomFacesPageLifecycle.prepareRender() : calling executeQuery() : preferredLocale = en, uiViewRoot.getLocale() = en
DeptViewImpl.executeQueryForCollection() : getName() = DepartmentList, vParamNV[0] = LanguageBVar, vParamNV[1] = enSo, this seems to behave similar to your updated testbindlocale.zip example.
about determining whether the Locale has changed
Consider this scenario ...
(i1) Run TestPage.jspx and the "translated Dname" column shows "translated data" with suffix "(en)", the same as in (h1).
(i2) Select a different row in the table, and click the "Edit Number on AnotherPage" button. This output is added on the console:
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = en
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = en
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = en : different so the Locale has changed
CustomFacesPageLifecycle.prepareRender() : calling executeQuery() : preferredLocale = en, uiViewRoot.getLocale() = en
DeptViewImpl.executeQueryForCollection() : getName() = DeptView, vParamNV[0] = LanguageBVar, vParamNV[1] = en(i3) Without entering an "Example Number ...", just click the "Update and Back to TestPage" button. This output is added on the console:
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = en
oracle.adf.controller.faces.lifecycle.FacesPageLifecycle addMessage
WARNING: JBO-35007: Row currency has changed since the user interface was rendered. The expected row key was oracle.jbo.Key[20 ] ... and the "JBO-35007: Row currency ..." message also shows up on the page.
(i4) Click the "Update and Back to TestPage" button again to return to the "start page".
If I try a scenario similar to "i1 to i4" where I do provide an "Example Number ..." in step (i3), the first row gets updated instead of the one I selected in step (i2).
To imporve this behaviour I replaced this line ...
if (preferredLocale != uiViewRoot.getLocale()) {... with this line ...
if (!preferredLocale.equals(uiViewRoot.getLocale())) {And after that, a scenario like "i1 to i4" behaves like this:
(j1) Run TestPage.jspx and the "translated Dname" column shows "translated data" with suffix "(en)", the same as in (h1) and (i1). But only this output is added on the console:
DeptViewImpl.executeQueryForCollection() : getName() = DeptView, vParamNV[0] = LanguageBVar, vParamNV[1] = en
DeptViewImpl.executeQueryForCollection() : getName() = DepartmentList, vParamNV[0] = LanguageBVar, vParamNV[1] = en
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = en(j2) Select a different row in the table, and click the "Edit Number on AnotherPage" button. This output is added on the console:
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = en
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = en(j3) Without entering an "Example Number ...", just click the "Update and Back to TestPage" button. This output is added on the console:
CustomFacesPageLifecycle.prepareRender() : preferredLocale = en, uiViewRoot.getLocale() = en ... and no message on the page, just returning to the "start page".
If I try a scenario similar to "j1 to j3" where I do provide an "Example Number ..." in step (j3), the correct row is updated.
But, if I precede a scenario like "j1 to j3" with an explicit language change, things go wrong again.
(k1) Run TestPage.jspx and the "translated Dname" column shows "translated data" with suffix "(en)", the same as in (h1), (i1) and (j1).
(k2) Click on "Italian", the "translated Dname" column shows "translated data" with suffix "(it)", similar to step (h2).
(k3) Select a different row in the table, and click the "Aggiorna Numero con AnotherPage" button. This output is added on the console:
CustomFacesPageLifecycle.prepareRender() : preferredLocale = it, uiViewRoot.getLocale() = it
CustomFacesPageLifecycle.prepareRender() : preferredLocale = it, uiViewRoot.getLocale() = en
CustomFacesPageLifecycle.prepareRender() : preferredLocale = it, uiViewRoot.getLocale() = en : different so the Locale has changed
CustomFacesPageLifecycle.prepareRender() : calling executeQuery() : preferredLocale = it, uiViewRoot.getLocale() = it
DeptViewImpl.executeQueryForCollection() : getName() = DeptView, vParamNV[0] = LanguageBVar, vParamNV[1] = it(k4) Without entering an "Campo Numerico ...", just click the "Aggiorna e Ritorna a TestPage" button. This output is added on the console:
CustomFacesPageLifecycle.prepareRender() : preferredLocale = it, uiViewRoot.getLocale() = it
oracle.adf.controller.faces.lifecycle.FacesPageLifecycle addMessage
WARNING: JBO-35007: La valuta della riga è cambiata da quando è stata visualizzata linterfaccia utente. La chiave di riga prevista era {0}. ... and the "JBO-35007: La valuta della riga ..." message also shows up on the page.
(k5) Click the "Aggiorna e Ritorna a TestPage" button again to return to the "start page".
see http://verveja.footsteps.be/~verveja/files/oracle/ChangeLanguageInTheUIForData-v0.05.zip (check README.txt)
So, ...
It looks like some "row currency issues" remain with this approach.
regards
Jan -
FI-SL Currency Translation issue , Tcode - GWUL
HI
When I use the T-Code GWUL to run the currency translation something is happening in November with some of the equity accounts. I will use our Japan company code as an example. In period 1 through 5 of FY14 when I run the translation the Common stock account stays static (and it should as it is associated with a historic rate). It is associated with ER IND 5 which has an exchange rate for 100 JPY = .92518 to 1 USD.
The Yen value for this account is 4,039,919 which translates to $37,376.52. However, when I ran the report for Period 6 ( and there was no change/activity in the Common stock account) it is reflecting a translation difference of $37,376.42 yet it is still showing the rate in the system as .92518. We are also seeing something similar happen in other equity accounts.
Period 5
Period 6HI
Thanks for reply
I mean on translation difference column .
GWUL is ran for updating special purpose ledger
We need to specify ledger to be translated before executiong tcode GWUL
So GWUL will translate ledger on basis of ex rate type configured for its special purpose ledger
In above screen shot CH is ledger and Ex rate indicator are ex rate types which are different for different set of GL accounts defined . -
Many report columns (70+) and ORA-06502 (Small char buffer)
Hello!
I have a big problem with my few tables and Oracle APEX. I have 2 big tables with 75 and 108 columns and If i try to translate a column headings in report (tabular form) that appear a ORA-06502 Error (Small char buffer). If i don't change column order and headings that all ok.
I thought that it beacuse of incorrect columns datatype but if i set column heading in report to "None" or if i set to null part of column heading (30-40%) that all be ok with report.
This problem not appear with other more small tables
This is message from debug mode:
Debug ScreenshotTexasApexDeveloper wrote:
You are running into an issue of having too many columns on a report.. Is there any way to reduce the # of columns you are trying to report on/display?
Thank you,
Tony Miller
Ruckersville, VAYes, i can split my big tables to 2 parts, but it not best way for our application...
There is no other problem solution?
Thank you for fast reply. -
hi all
is there any sql function that translate the column data into specified language
i.e a function that have 2 argument one is string and other is desired language
plz help its urgentplz help its urgent No it is not urgent. This is a free service and all are volunteers here. You cannot claim your post to be urgent compared to others. Additionally if it is that urgent you should contact Oracle support directly.
Adith -
SetNull() doesn't work?
The code
cs.setNull(i, Types.NULL);
doesn't work with the latest 9.2.0.5 JDBC driver. It throws a
java.sql.SQLException: Ungültiger Spaltentyp
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:269)
at oracle.jdbc.driver.OracleStatement.get_internal_type(OracleStatement.java:6411)
at oracle.jdbc.driver.OraclePreparedStatement.setNull(OraclePreparedStatement.java:1358)
at weblogic.jdbc.wrapper.PreparedStatement.setNull(PreparedStatement.java:294)
rughly translated: "Invalid column type". As my methodis generic and just checks if an object is null, I don't know the type of the object if it's null. So, the type Types.NULL should work:
cs.setNull(i, Types.NULL);
but it doesn't. Is this still a bug in the 9.x driver?Hi Hilpert,
Using "Types.NULL" never worked for me. I always supply the (data) type of the relevant column. So if the column has a NUMBER data type (for example), you need to do this:
cs.setNull(i, Types.NUMERIC);My (generic) "executeQuery()" method takes three parameters:
1. the SQL statement
2. the parameter values
3. the parameter data types
So if one of the parameter values is null, I can safely invoke the "setNull()" method, since I have the correct data type.
Good Luck,
Avi. -
Multi Languague Support for OAF PAges
We have to develop the OAF Pages enabling MLS. This includes the LABELs also changing according to the user languague along with the data.
Can anybody answer the below questions
1> Is there a standard approach that oracle recommends ?
2> Any easy and best approach if anybody already implemented ?
Thanks
SreedharSrini
I went through the doc. I understand we need to PERSONALIZE to translate the columns into different languages. But my question her is , do we need to personalize always to translate ? Because, I'm not required to personalize anything on the page. Is there any other approach to translate the columns without personalize the regions ?
Also, Do we need to export the personalizations at each REGION Level and then import into MDS ? Can't we do at a PAGE Level ? I'm new to the MLS Personalizations.
Thanks
Sreedhar -
Hi,
could any one tell me where i can find the Transaction Key infoobject "0PROCESSKEY" in 0ic_c03 cube?
i see the filed BWVORG in the 2lis_03_BX/BF/UM extraction structure, but i don't know where i can find corresponding infoobject in BW - in update rules or transfer rules?
please advice,
Pinghi Ping,
you won't find 0PROCESSKEY in infocube 0ic_c03,
it has been translated to column, try to check the routine in update rules to infocube, you will find
code like attached, you can locate bvwvorg map to 0processkey in transfer rules, go to 'change transfer rules', tab 'tranfer rules', in right side 'assign infoobj-field', click 'position/other entry' button, choose field name and type bwvorg.
hope this helps.
IF ( COMM_STRUCTURE-PROCESSKEY = '100' "Other Issues
OR COMM_STRUCTURE-PROCESSKEY = '101' "Returns / Vendor
OR COMM_STRUCTURE-PROCESSKEY = '104' "Material Transfer
OR COMM_STRUCTURE-PROCESSKEY = '105' "Stock Adjustment InvD -
OR COMM_STRUCTURE-PROCESSKEY = '106' "Stock Adjustment Other -
OR COMM_STRUCTURE-PROCESSKEY = '110' ) "Issues from Stock Transfers
AND COMM_STRUCTURE-BWAPPLNM EQ 'MM'
Valuated Stock is considered
AND ( COMM_STRUCTURE-STOCKCAT IS INITIAL OR
COMM_STRUCTURE-STOCKCAT = 'E' )
Only movements which are relevant for stock control
AND COMM_STRUCTURE-STOCKRELEV = '1'
AND COMM_STRUCTURE-CPQUABU <> 0.
result value of the routine
RESULT = COMM_STRUCTURE-infoobjectname.
if the returncode is zero, the result will be updated
RETURNCODE = 0.
ELSE.
if the returncode is not equal zero, the result will not be updated
RETURNCODE = 4.
ENDIF. -
Hello:
I have the following query which translates a column to include "underscores". In addition, at the end of the value, I need to add the following "_v1".
In addition, I need to add two additional texts to precede the value. For example:
The current value looks like this: Retinal Exam.
My current query gives me the following result: Retinal_Exam.
I need the query to give me this result: WM_TMV_Retinal_Exam_v1.
The WM and the TMV are coming from other tables.
Can someone help me fix my query as I can add this extra bit of text?
This is my query:
select global_traittype_description, translate(global_traittype_description,' /-()','_') as traitname
from trait_map_dim
order by global_traittype;I tried a number of things and I keep receiving an "Invalid Character" message.
Thanks for the help.Hi,
Assuming Column_value 'WM' comes from table_1. Column_1
and column_value 'TMV' comes from table_2.Column_2.
Your query would be something like:
select global_traittype_description,
table_1.Column_1 || '_' || table_2.Column_2 || '_' || translate(global_traittype_description,' /-()','_') || '_v1' traitname
from trait_map_dim, table_1, table_2
where
{join condition of your three tables}
order by global_traittype;
Hope this helps.
Regards,
Jo -
Transfering Access and Excel to XML
Dear all,
Does anybody know the classes and APIs used to transfering Access and Excel to XML?
KevinThere is no single Java API that is built to translate Access and Excel data into XML. However, you can use a simple combination of APIs to accomplish this task. A direct way of doing this is to create ODBC datasources from your Access or Excel sources, use JDBC to connect to and query those datasources. From there you can use the WebRowSet to convert your ResultSet into XML. If you require more control over the formatting of the data, you'll need write something that iterates over the ResultSet data, translating the column names and values into XML. I would recommend using JDOM to build your XML documents. WebRowSet is part of the Rowset API.
Hope this clears things for you. -
Hi.
I have a Class ATable that extends Panel. It is working good and draw the table.
But, I need to convert this class to make it extends JPanel not Panel but it is not draw the table unless I change the frame size.
So what is the problem please?
this is my Class :
=========================================================
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.*;
public class ATable extends JPanel
implements TableDataModelListener, ColumnModelListener
public static int OUTSIDE_TABLE = -1;
TableCellRenderer tableCellRenderer;//interface for ---> Cell getTableCell(ATable atable, Object obj, int i, int j)
TableDataModel tableDataModel; //interface
ColumnModel columnModel; //class
int cellOffsetY[];
int rowHeight;
int rowPadding;
Point tableOffset;
Point textOffset;
Color gridLinesColor;
Color tableBackground;
ATableHeader tableHeader;
static class _cls1 extends WindowAdapter
public void windowClosing(WindowEvent e)
System.exit(0);
_cls1()
public ATable()
rowPadding = -1;
tableCellRenderer = new DefaultTableCellRenderer();
tableDataModel = new DefaultTableDataModel();
columnModel = new ColumnModel();
initColumnModel();
setLayout(new BorderLayout());
tableHeader = new ATableHeader(this, columnModel, new DefaultHeaderCellRenderer());
add("North", tableHeader);
initATable();
public ATable(TableDataModel tableDataModel, ColumnModel columnModel, TableCellRenderer tableCellRenderer, TableCellRenderer headerCellRenderer)
rowPadding = -1;
this.tableCellRenderer = tableCellRenderer;
this.tableDataModel = tableDataModel;
this.columnModel = columnModel;
setLayout(new BorderLayout());
tableHeader = new ATableHeader(this, columnModel, headerCellRenderer);
add("North", tableHeader);
initATable();
void initColumnModel()
for(int i = 0; i < tableDataModel.getColumnsCount(); i++)
TableColumn tableColumn = new TableColumn("Header " + i, i, 70);
columnModel.addColumn(tableColumn);
void calTextOffset()
FontMetrics fm = getFontMetrics(getFont());
textOffset.x = fm.charWidth('0');
textOffset.y = fm.getAscent();
void adjustColumnHeight()
FontMetrics fm = getFontMetrics(getFont());
rowHeight = fm.getAscent() + fm.getDescent() + 1;
tableOffset.y = tableHeader.getPreferredSize().height + rowPadding;
void initATable()
gridLinesColor = new Color(50, 50, 50);
tableBackground =new Color(155, 175, 202);
textOffset = new Point();
tableOffset = new Point();
int fontSize = 12;
Font font = new Font("Dialog", 0, fontSize);
setFont(font);
calTextOffset();
adjustColumnHeight();
calBeanDimensions();
calCellsOffsetY();
columnModel.addColumnModelListener(this);
void calCellsOffsetY()
if(cellOffsetY == null || cellOffsetY.length != tableDataModel.getRowsCount())
cellOffsetY = new int[tableDataModel.getRowsCount()];
int y = tableOffset.y;
for(int i = 0; i < cellOffsetY.length; i++)
cellOffsetY[i] = y;
y += rowHeight + rowPadding;
public void setFontAndAdjustDim(Font font)
tableHeader.setFontAndAdjustDim(font);
setFont(font);
calTextOffset();
adjustColumnHeight();
calBeanDimensions();
FontMetrics fm = getFontMetrics(getFont());
int colWidth[] = new int[columnModel.getColumnsCount()];
for(int i = 0; i < columnModel.getColumnsCount(); i++)
TableColumn tableColumn = columnModel.getColumn(i);
int dataModelIndex = tableColumn.getDataModelIndex();
int max = fm.stringWidth(tableColumn.getHeaderValue());
for(int j = 0; j < tableDataModel.getRowsCount(); j++)
int current = fm.stringWidth(tableDataModel.getValueAt(j, dataModelIndex).toString());
if(current > max)
max = current;
colWidth[i] = max + textOffset.x + textOffset.x;
columnModel.setColumnsWidth(colWidth);
calCellsOffsetY();
doLayout();
public void setFont(Font font)
super.setFont(font);
calTextOffset();
void drawCell(Graphics g, int row, int col)
TableColumn tableColumn = columnModel.getColumn(col);
int x = tableColumn.getX();
int width = tableColumn.getWidth();
int y = cellOffsetY[row];
int dataModelIndex = tableColumn.getDataModelIndex();
Object value = tableDataModel.getValueAt(row, dataModelIndex);
Cell cell = tableCellRenderer.getTableCell(this, value, row, col);
drawCell(g, cell, x, y, width);
void drawCell(Graphics g, Cell cell, int x, int y, int width)
g.setClip(x, y, width, rowHeight);
Color oldColor = g.getColor();
g.setColor(gridLinesColor);
g.drawRect(x, y, width - 1, rowHeight - 1);
g.setColor(cell.getBGColor());
g.fillRect(x + 1, y + 1, width - 2, rowHeight - 2);
g.setColor(cell.getTextColor());
g.setClip(x + 1, y + 1, width - 2, rowHeight - 2);
g.drawString(cell.getValue(), x + textOffset.x, y + textOffset.y);
if(cell.getHighlight() != null)
g.setColor(cell.getHighlight());
g.drawRect(x + 1, y + 1, width - 3, rowHeight - 3);
g.setColor(oldColor);
public int convertColumnIndexToModel(int columnIndex)
TableColumn tableColumn = columnModel.getColumn(columnIndex);
return tableColumn.getDataModelIndex();
public int convertColumnIndexToView(int modelColumnIndex)
int size = columnModel.getColumnsCount();
for(int i = 0; i < size; i++)
TableColumn tableColumn = columnModel.getColumn(i);
if(tableColumn.getDataModelIndex() == modelColumnIndex)
return i;
return -1;
public void hideColumn(int columnIndex)
columnModel.removeColumn(columnIndex);
public void addColumn(TableColumn tableColumn)
columnModel.addColumn(tableColumn);
public void moveColumn(int columnIndex, int newColumnIndex)
columnModel.moveColumn(columnIndex, newColumnIndex);
public int getColumnIndexFromPixel(int x)
TableColumn tableColumn = columnModel.getColumn(columnModel.getColumnsCount() - 1);
int edgeX = (tableColumn.getX() + tableColumn.getWidth()) - 1;
if(x > edgeX || x < textOffset.x)
return OUTSIDE_TABLE;
for(int i = columnModel.getColumnsCount() - 1; i >= 0; i--)
if(x > columnModel.getColumn(i).getX())
return i;
return OUTSIDE_TABLE;
public int getRowFromPixel(int y)
int edgeY = ((cellOffsetY.length == 0 ? 0 : cellOffsetY[cellOffsetY.length - 1]) + rowHeight) - 1;
if(y > edgeY || y < tableOffset.y)
return OUTSIDE_TABLE;
for(int i = cellOffsetY.length - 1; i >= 0; i--)
if(y > cellOffsetY)
return i;
return -1;
public Dimension getPreferredSize()
int width=0;
int height=0;
TableColumn tableColumn = columnModel.getColumn(columnModel.getColumnsCount() - 1);
try
height = cellOffsetY[cellOffsetY.length - 1] + rowHeight;
width = tableColumn.getX() + tableColumn.getWidth();
catch(Exception exp)
height = 0;
width = 0;
return new Dimension(width, height);
public Dimension getMinimumSize()
TableColumn tableColumn = columnModel.getColumn(columnModel.getColumnsCount() - 1);
int height = cellOffsetY[cellOffsetY.length - 1] + rowHeight;
int width = tableColumn.getX() + tableColumn.getWidth();
return new Dimension(width, height);
public void updateAll()
int rowsCount = tableDataModel.getRowsCount();
update(0, tableDataModel.getRowsCount() - 1, 0, columnModel.getColumnsCount() - 1);
public void update(int firstRowIndex, int lastRowIndex, int firstColIndex, int lastColIndex)
if(firstRowIndex > lastRowIndex || firstColIndex > lastColIndex)
return;
try
TableColumn firstColumn = columnModel.getColumn(firstColIndex);
TableColumn lastColumn = columnModel.getColumn(lastColIndex);
int width = (lastColumn.getX() + lastColumn.getWidth()) - firstColumn.getX();
int height = (cellOffsetY[lastRowIndex] + rowHeight) - cellOffsetY[firstRowIndex];
Image offScreen = createImage(width, height);
Graphics og = offScreen.getGraphics();
og.translate(-1 * firstColumn.getX(), -1 * cellOffsetY[firstRowIndex]);
for(int i = firstRowIndex; i <= lastRowIndex; i++)
for(int j = firstColIndex; j <= lastColIndex; j++)
drawCell(og, i, j);
getGraphics().drawImage(offScreen, firstColumn.getX(), cellOffsetY[firstRowIndex], null);
catch(ArrayIndexOutOfBoundsException e)
calCellsOffsetY();
repaint();
System.out.println(e);
e.printStackTrace();
public void paint(Graphics g)
tableHeader.repaint();
updateAll();
public void setGridLinesColor(Color gridLinesColor)
this.gridLinesColor = gridLinesColor;
tableHeader.setGridLinesColor(gridLinesColor);
repaint();
public void setTableBackground(Color tableBackground)
this.tableBackground = tableBackground;
repaint();
public void tableDataModelChanged(TableDataModelEvent e)
if(e.getType() == TableDataModelEvent.UPDATE)
update(e.getFirstRow(), e.getLastRow(), 0, columnModel.getColumnsCount() - 1);
else
if(e.getType() == TableDataModelEvent.INSERT)
calCellsOffsetY();
update(e.getFirstRow(), e.getLastRow(), 0, columnModel.getColumnsCount() - 1);
} else
calCellsOffsetY();
repaint();
void calBeanDimensions()
public void cellDataChanged(int row, int col)
col = convertColumnIndexToView(col);
if(col < 0)
return;
} else
TableColumn column = columnModel.getColumn(col);
int width = column.getWidth();
int height = rowHeight;
Image offScreen = createImage(width, height);
Graphics og = offScreen.getGraphics();
og.translate(-1 * column.getX(), -1 * cellOffsetY[row]);
drawCell(og, row, col);
getGraphics().drawImage(offScreen, column.getX(), cellOffsetY[row], null);
return;
public void columnAdded(ColumnModelEvent e)
calBeanDimensions();
repaint();
public void columnMoved(ColumnModelEvent e)
repaint();
public void columnRemoved(ColumnModelEvent e)
calBeanDimensions();
repaint();
public void columnWidthChanged(ColumnModelEvent e)
calBeanDimensions();
repaint();
public ATableHeader getHeader()
return tableHeader;
public ColumnModel getColumnModel()
return columnModel;
public static void main(String args[])
throws Exception
ATable aTable = new ATable();
Frame f = new Frame();
f.addWindowListener(new _cls1());
f.add(aTable);
Dimension dim = aTable.getPreferredSize();
f.setVisible(true);
f.pack();thank you for reply.
I removed the setFont function and the class works good and showing the table.
But when I put this table in JFrame not in Frame the table disappeared. I mean if I changed the Main class to the following :
================================================
public static void main(String args[])
throws Exception
ATable aTable = new ATable();
JFrame f = new JFrame();
f.addWindowListener(new _cls1());
f.getContentPane.add(aTable);
Dimension dim = aTable.getPreferredSize();
f.setVisible(true);
f.pack();
Maybe you are looking for
-
Hi, i'm having a problem that i just cant work out; i'll describe whats happening and would greatly apriciate any help anyone can give. when i type in an external/absolute link in dreamweaver sidewide change link function i keep getting a message say
-
Opening stock column in report
Hi, I have a reporting requirement report name is "Purchasing during the year" one of the column in report is Opening Stock so from where can get the opening stock in this column.
-
Create table from another table including constraints
Hi, Is there a way to create a table from another table including constraints. CREATE TABLE COPY_EMP as SELECT * FROM EMP WHERE 1 =2 ; This creates the table, but the constraints are not copied over. I was reading about DBMS_REDEFINITION - can that b
-
IPod frozen than working... how to check it's health status?
A friend of mine gave me a 20GB classic iPod, it was supposed to be broken, took it home, connected to the usb cable and the icon to get to service it showed up, nothing else to do, no way to access diagnostics, nothing nothing nothing. Now, connecte
-
March 25 2011 I'm on a Mac OS X (power pc) After restarting my computer today. Firefox did not launch. I clicked on the icon, it started to initiate and then stopped before anything happened. To try to fix the problem, I trashed the application and d