How to set an array element in an object type of array??
Hi,
I have set attribute as follow:
Color[] colors;
Color[] colors = new Color[20];
colors[0] = "Red";
colors[1] = "blue";I can't compile this code. It said:
"Incompatible type -found java.lang.String but expected Colors
Could you tell me how to set an array elements when the array type is an object?
in your case, the array shouldn't be Color[] but String[] since you re intending to put strings into it
by the way, you could also use a hashmap to map a string to a color:
HashMap<String, Color> hm = new HashMap<String, Color>();
hm.put("Red", Color.RED);
hm.put("Blue", Color.BLUE);
etc.
Similar Messages
-
I need sorting VI that returns the sorted array element's positions in the unsorted array
I need a VI that will very quickly (n log n) sort a 1D array of doubles. This VI should not only output the sorted array, but for each of the sorted array elements, it should also output that sorted array element's position in the unsorted array. So for example if the input array were:
unsorted_array
4.1
2.3
7.0
5.6
10.2
Then the output arrays would be:
sorted_array
2.3
4.1
5.6
7.0
10.2
indices_array
1 (the value 2.3 is located at position 1 in the unsorted_array)
0 (the value 4.1 is located at position 0 in the unsorted_array)
3 (the value 5.6 is located at position 3 in the unsorted_array)
2 (the value 7.0 is located at position 2 in the unsorted_array)
4 (the value 10.2 is located at position 4 in the unsorted_array)
This way I could generate the sorted_array using just the indices_array and the unsorted_array. Has anyone written a nifty piece of code to do this? I did some research on (n log n) sorting algorithms but most of them use recursion which I don't know how to do in LabVIEW. It would also be nice to have an algorithm like this that could sort an array of strings.
cheers,
RichardTry something like the attached example (LabVIEW 7.0). I think it does what you need.
(To understand the code, it is important to know that arrays of clusters are sorted by the first element in the cluster).
Sort array itself sorts also array of strings, so you could just substitute, keeping the rest of the code the same.
Sort array uses a variation of quicksort, so it should have about NlogN complexity.
(If you think you only need the array of indices to later generate the sorted array, it does not make much sense to even do it. To get the indices, you need to sort the array anyway. You should just sort the plain array directly.
Message Edited by altenbach on 07-13-2005 03:47 PM
LabVIEW Champion . Do more with less code and in less time .
Attachments:
SortAndIndex.vi 26 KB -
How to set the Default values for Info Objects in Data Selection of InfoPac
Hi All,
Flat file Extracion:
How to set the Default values for Info Objects in Data Selection Tab for Info Package
ex: Fiscal Year Variant Info Object having values 'K4' 'Y2' etc in Flat file
Initially default value(not constant) for this info Object value should be 'K4' in Info Package
If I set data selection value for this info object K4 it will retreive records with this selection only? how to handle
Rgds,
CVHi,
suppose as your ex. if you are having fiscalyear variant in the dataselection tab then specify K4 in the from column, again the ficalyearvariant row and click on insert duplicate row at the bottom . you will get another row . In that enter Y2 in the from column. now you can extract K4, y2 values .
haritha -
How to set Where clause in the View Object of the MessageChoice ?
Hi,
How to set Where clause in the View Object of the
MessageChoice ?
Example:
<bc4j:rootAppModuleDef name="EdEscolaCampusView1AppModule"
definition="ed00050.Ed00050Module"
releaseMode="stateful" >
<bc4j:viewObjectDef name="EdEscolaCampusView1" >
<bc4j:rowDef name="CreateEdEscolaCampusView1" autoCreate="true" >
<bc4j:propertyKey name="key" />
</bc4j:rowDef>
</bc4j:viewObjectDef>
<bc4j:viewObjectDef name="ListaTipLocalView1"
rangeSize="9999">
</bc4j:viewObjectDef>
</bc4j:rootAppModuleDef>
</bc4j:registryDef>
messageChoice declaration:
<bc4j:messageChoice name="SeqTipoLocalCampus"
attrName="SeqTipoLocalCampus"
prompt="Local do Campus">
<contents>
<bc4j:optionList attrName="SeqTipoBasico"
textAttrName="NomTipoBasico"
voName="ListaTipLocalView1"/>
</contents>
</bc4j:messageChoice>
I would like set where clause of ViewObject, with dinamic parameters (using attribute1 = :1), before populate messageChoice.
thanks...
DaniloHi Andy,
I try set a where clause using the message:
Set where Clause parameter using UIX , but my UIX Page have 2 messageChoice's of different ViewObject's, then I need implement this Java Class:
//Nome da Package da Tela Detail
package br.com.siadem.siaed.ed00050;
// Importa as Bibliotecas necessárias
import oracle.jbo.ViewObject;
import oracle.jbo.ApplicationModule;
import oracle.jbo.client.Configuration;
import oracle.cabo.servlet.BajaContext;
import oracle.cabo.servlet.Page;
import oracle.cabo.servlet.event.PageEvent;
import oracle.cabo.servlet.event.EventResult;
import oracle.cabo.data.jbo.servlet.bind.*;
import oracle.cabo.ui.data.BoundValue;
import oracle.cabo.ui.data.DataBoundValue;
import javax.servlet.http.HttpServletRequest;
import br.com.siadem.siaed.util.*;
import javax.servlet.http.Cookie;
import oracle.cabo.data.jbo.def.NestedAppModuleDef;
import oracle.cabo.data.jbo.def.ViewObjectDef;
import oracle.cabo.data.jbo.def.AppModuleDef;
// Classe que configura os parametros para a execução da Query,
// utilizando variáveis de Sessao
public class FunPreQueryLista
public static EventResult FunConfiguraQuery(BajaContext context, Page page, PageEvent event) throws Throwable
// TrataDadosSessao - Classe utilizada para retornar os valores das variáveis de sessão genéricas
// Ex: CodCliente, CodMunicipio etc...
TrataDadosSessao varDadosSessao = new TrataDadosSessao();
// 1o. Parametro Configurado - Através da classe TrataDadosSessao, utilizando um método Get
// <alterar>
String valor1 = varDadosSessao.getCodCliente();
String valor2 = varDadosSessao.getCodMunicipio();
//Cria o objeto que retorna o ApplicationModule
ApplicationModule am = ServletBindingUtils.getApplicationModule(context);
// Início das Configurações da Query da Lista
//Cria o objeto que retorna o view object da lista desejada
//alterar
ViewObject TipoLocal = am.findViewObject("ListaTipoLocalView1");
//Configuração dos parametros definidos na query do view Object
//alterar
TipoLocal.setWhereClauseParam(0,valor1);
TipoLocal.setWhereClauseParam(1,valor2);
// Executa a Query
TipoLocal.executeQuery();
// Fim das Configurações da Query da Lista
// Início das Configurações da Query da Lista
//Cria o objeto que retorna o view object da lista desejada
//alterar
ViewObject TipoDestLixo = am.findViewObject("ListaDestinoLixoView1");
//Configuração dos parametros definidos na query do view Object
//alterar
TipoDestLixo.setWhereClauseParam(0,valor1);
TipoDestLixo.setWhereClauseParam(1,valor2);
// Executa a Query
TipoDestLixo.executeQuery();
// Fim das Configurações da Query da Lista
// Retorna o Resultado para a Página
return new EventResult(page);
The code works very well...
And, I'm sorry for my two repost's in UIX Forum about this in a few time.
Thank very much...
Danilo -
How to set the default value of an item type DATE PICKER to the day of yest
Hi
How to set the default value of an item type DATE PICKER to the day of yesterday ?
Thank you very much !
Christian.Hi Christian,
Have a look at this thread Re: Default the Date Picker to Today
It covers this issue in detail.
Regards
Paul -
How to set a form element value using javascript?
Hello,
I have been using the following two functions in AS 9.0.2 to set form values in javascript and it works correctly. However, the same code does not work in AS 10.1.2.0.2. Would appreciate if someone could let me know how to set form elements using Javascript(onchange of a field).
function set_item_value(p_field_name, p_value)
var v_index, v_full_name;
for(v_index=0; v_index<document.forms[0].length; v_index++)
v_full_name = document.forms[0].elements[v_index].name.split
if (v_full_name[2] == p_field_name)
document.forms[0].elements[v_index].value = p_value;
function get_item_value(p_field_name)
var v_index, v_full_name, v_return="";
for(v_index=0; v_index<document.forms[0].length; v_index++)
v_full_name = document.forms[0].elements[v_index].name.split
if(v_full_name[2] == p_field_name)
if(document.forms[0].elements[v_index].type != "radio")
v_return = document.forms[0].elements[v_index].value;
else
if(document.forms[0].elements[v_index].checked)
v_return = document.forms[0].elements[v_index].value;
if(v_return == " ")
v_return = "";
return v_return;
Thanks
DevThis is not the best way to write JavaScript in Portal environment!
You can't be sure that a form is the first in the html source!
In Portal you change the order of your portlets, and also you can have several instances of the same portlet on the same page!!!
You should use qualified form and field names!
Please check the following JPDK methods:
UrlUtils.htmlFormName
HttpPortletRendererUtil.portletParameter -
How to copy an array element in one class to an array in another class?
Hi,
I have a ClassRoom class that stores a list of Student objects in an array. How would I copy a Student object from the Student[] array in the ClassRoom class to an array in another class?
Is it something like this:
System.arraycopy(Students, 2, AnotherClass.Array, 0, 2);In an array do the items get copied over existing array elements or can the be added to the end? If so, how would I specify add copied object reference to the end of the array in the other class?drew22299 wrote:
Hi,
I have a ClassRoom class that stores a list of Student objects in an array. How would I copy a Student object from the Student[] array in the ClassRoom class to an array in another class?
Is it something like this:
System.arraycopy(Students, 2, AnotherClass.Array, 0, 2);In an array do the items get copied over existing array elements or can the be added to the end? If so, how would I specify add copied object reference to the end of the array in the other class?System.arrayCopy will overwrite whatever is already in the array. It is your job to make sure it copies into the proper array location.
That being said, you're only moving a single student. This is not something you would use arrayCopy for, as you can just do that with simple assignment. Also, you should consider giving Class a method to add a student to its student list, as the class should know how many students it has and can easily "append" to the array.
Note: I hope you noticed the quotes around append. Java's arrays are fixed size. Once allocated, their size cannot change. You may want to consider using one of the List implementations (ArrayList, for example) instead. -
How to set Statistical wbs element?
hi,everyone. i'm a green hand in PS.
i know Statistical wbs element is different from normal wbs element from you guys.
but i don't know how to set a Statistical wbs element, i mean how to make a normal wbs element become a Statistical wbs element?
regards,
tiger wuYes, if you choose this (in which the Statistical check box is ticked) to create a project, all the WBS will be statistical.
To create a project in which some of the WBS are statistical and some are not, you don't need to configure this (check Box) in Project profile. You can create a project (CJ20N) and for WBS elements on control tab, you can check this or leave it.
Hope it helps.
Arya
Edited by: Arya Singh on Aug 30, 2008 8:09 PM -
How to set current/system date to af:inputDate type field
Hi,
I am using <af:inputDate component to take date input from user. It is not a VO atrribute field. Could you pls suggest how to set system date to it as it loads on page by default.
Regards,
jituCould you please provide the .jsff code as well. What you have used as value="#{bindings.date.inputValue}" in below code?
<af:inputDate value="#{bindings.date.inputValue}"
label="Sales Date"
required="#{bindings.date.hints.mandatory}"
shortDesc="#{bindings.date.hints.tooltip}" id="id1"
binding="#{bean.searchDate}">
<f:validator binding="#{bindings.date.validator}"/>
<af:convertDateTime pattern="#{bindings.date.format}"/>
</af:inputDate> -
How to set receiving batch mandatory in MIGO-mov type 303
Hi gurus,
We want to set receiving batch mandatory in MIGO-mov type 303.
We already made this field (UMCHA) as Required in OMJJ under Field selection-Enjoy and Field selection (from 201)/Batch search procedure, but when do transaction, the field still not even appear. Can you help to know how to do that?
Many thanks in advanceHello HongNguyen ,
Please try the following customzing path in your system if you haven't already:
- Transaction SPRO
- IMG
- Materials Management
- Inventory Management and Physical Inventory
- Settings for Enjoy Transactios
- Settings for Goods Movements (MIGO)
- Field Selection per Mvt Type
Please check your settings for Movement Type 303 and see if they are set to "Mandatory".
I hope this information has been helpful.
Best Regards,
Frank -
How to access child movieclip info of an object in an array?
Hi
I've dynamically created a whole bunch of movieclips.
I've given each clip a name based on a variable number:
mc.name = "mc"+i;
I've also use addChild to add a couple of dynamic text fields to each movieClip, named myText1 and myText2.
I then push each movieClip object into an array:
myArray.push(mc);
When I addChild the movieClips, they display fine, complete with each textField. And if I use the following loop to trace the name of each clip in the array, I get:
for(var i=0; i<myArray.length; i++)
trace(myArray[i].name);
output:
mc1
mc2
mc3
mc4
etc
What I want to now is be able to access the text fields within each movieclip in the array. However, I am getting errors when I try different ways. For example:
for(var i=0; i<myArray.length; i++)
trace(myArray[i].myText1.text);
gives the error: A term is undefined and has no properties.
How do you access the values and contents of the children of movieClip objects that are stored in arrays?
Thanks
ShaunFor whatever reason, dynamically added children cannot be targeted that way. If you added the textfields dynamically you may need to use getChildByName() to target them. It partly depends on how you created them and whether or not you have direct access to them. Aside from that you could also assign the textfields to variables that you create for the mc and target those by their variable names.
The following demos these two approaches:
var mc:MovieClip = new MovieClip();
addChild(mc);
var tf:TextField = new TextField();
tf.text = "this is text";
mc.addChild(tf);
// first way
tf.name = "tfield";
trace(TextField(mc.getChildByName("tfield")).text);
// second way
mc.tfid = tf;
trace(mc.tfid.text);
You could also store the textfields in arrays as they are created and have direct access to them with out the need to target the mc... the index should be the same as that which you use for the mc anyways. -
How can i create text elements in business object?
is dis possible to crete text elements in business objects...if any body knows please give me the idea...
Hello,
are we talking about the BEx Text elements that are also available in the BEx Analyzer ? if so then this is right now only possible in Analysis, OLAP Edition and Analysis, Edition for Microsoft Office.
Ingo -
Creating an Array of a Complex Object Type
hi,
We have 5 different variables of a complex type(defined by an xsd).
We want to put the values from these 5 objects into a single array variable of the same complex type.
Is there any function in bpel to do this? Can we specify an element with a certain number of nodes (Array length)..
do let us know of any possible alternatives or solutions...
Looking forward to some replies on this one...
Thanks,
VinodHi Vinod,
consider this.
<element name="Message">
<complexType>
<sequence>
<element name="someElement" type="xsd:string/>
<element name="someOtherElement" type="xsd:string/>
</sequence>
</complexType>
</element>
<element name="MessageArray">
<complexType>
<sequence>
<element name="Messages" type="Message" maxOccurs="unbounded" />
</sequence>
</complexType>
</element>
<variable name="Var1" type="client:Message"/>
<variable name="Var2" type="client:Message"/>
<variable name="Var3" type="client:Message"/>
<variable name="VarArray" type="client:MessageArray"/>
HTH
Mark -
Problem using Oracle Object Types and Arrays.
I'm currently trying to work with oracle object types in java and I'm running into some issues when trying to add an item to an array.
The basic idea is that I have a header object and a detail object (both only containing an ID and a description). Inside of my java code I'm trying to add a new detail line to the header that has been retrieved from the database.
Here's what I'm working with.
--Oracle Objects:
CREATE OR REPLACE TYPE dtl_obj AS OBJECT
detail_id INTEGER,
header_id INTEGER,
detail_desc VARCHAR2(300)
CREATE TYPE dtl_tab AS TABLE OF dtl_obj;
CREATE OR REPLACE TYPE hdr_obj AS OBJECT
header_id INTEGER,
src VARCHAR(30),
details dtl_tab
CREATE TYPE hdr_tab AS TABLE OF hdr_obj;
/--Java test methods
public static void main(String[] args) throws SQLException,
ClassNotFoundException
// Initialize the objects
Test t = new Test();
t.connect(); //Connects to the database
//The oracle connection will be accessible through t.conn
// Create the oracle call
String query = "{? = call get_header(?)}";
OracleCallableStatement cs = (OracleCallableStatement) t.conn.prepareCall(query);
cs.registerOutParameter(1, OracleTypes.ARRAY, "HDR_TAB"); //Register the out parameter and associate it with our oracle type
int[] hdrs = { 240 }; //we just want one for testing.
ArrayDescriptor descriptor = ArrayDescriptor.createDescriptor(
"ARRAY_T", t.conn);
oracle.sql.ARRAY oHdrs = new ARRAY(descriptor, t.conn, hdrs);
cs.setARRAY(2, oHdrs); //Set the headers to retrieve
// Execute the query
cs.executeQuery();
try
ARRAY invArray = cs.getARRAY(1);
// Start the retrieval process
Class cls = Class.forName(Header.class.getName());
Map<String, Class<?>> map = t.conn.getTypeMap();
map.put(Header._SQL_NAME, cls);
Object[] invoices = (Object[]) invArray.getArray();
ArrayList<Header> invs = new ArrayList(
java.util.Arrays.asList(invoices));
if (invs != null)
for (Header inv : invs)
System.out.println(inv.getHeaderId() + " " + inv.getSrc());
t.addDetail(inv, "new line");
for (Detail dtl : inv.getDetails().getArray()) // Exception thrown here
// java.sql.SQLException: Fail to construct descriptor: Invalid arguments
// at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
// at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:162)
// at oracle.jdbc.driver.DatabaseError.check_error(DatabaseError.java:861)
// at oracle.sql.StructDescriptor.createDescriptor(StructDescriptor.java:128)
// at oracle.jpub.runtime.MutableStruct.toDatum(MutableStruct.java:109)
// at com.pcr.tst.Detail.toDatum(Detail.java:40)
// at oracle.jpub.runtime.Util._convertToOracle(Util.java:151)
// at oracle.jpub.runtime.Util.convertToOracle(Util.java:138)
// at oracle.jpub.runtime.MutableArray.getDatumElement(MutableArray.java:1102)
// at oracle.jpub.runtime.MutableArray.getOracleArray(MutableArray.java:550)
// at oracle.jpub.runtime.MutableArray.getObjectArray(MutableArray.java:689)
// at oracle.jpub.runtime.MutableArray.getObjectArray(MutableArray.java:695)
// at com.pcr.tst.DetailTable.getArray(DetailTable.java:76)
// at com.pcr.tst.Test.main(Test.java:91)
System.out.println(dtl.getDetailDesc());
catch (Exception ex)
System.out.println("Error while retreiving header");
ex.printStackTrace();
public void addDetail(Header hdr, String desc) throws Exception
if (hdr == null)
throw new Exception("header not initialized");
// Convert the current list to an ArrayList so we can easily add to it.
ArrayList<Detail> dtlLst = new ArrayList<Detail>();
dtlLst.addAll(java.util.Arrays.asList(hdr.getDetails().getArray()));
// Create the new detail
Detail dtl = new Detail();
dtl.setDetailDesc(desc);
// add the new detail
dtlLst.add(dtl);
Detail[] ies = new Detail[dtlLst.size()];
ies = dtlLst.toArray(new Detail[0]);
DetailTable iet = new DetailTable(ies);
hdr.setDetails(iet);
}I know its the addDetail method causing the issue because if I comment out the t.addDetail(inv, "new line"); call it works fine.
Message was edited by:
pcristiniOracle® Database Object-Relational Developer's Guide
Also note that object relational database design is often less performant and scalable than relational. It is not very often used in production environments.
However, the object orientated programming feature that is provided with Oracle object feature set are used and can make development and interfaces a lot easier.
So in a nutshell. Say no to ref and nested table columns. Say yes to most of the other object features. IMO of course... -
How to call a Oracle Proc,which contains Object Type as in Param, from java
Hi
Would like to know how to call a Oracle Procedure which contains the Object Type Parameter from java.
Here is my code will look like...
1. CREATE OR REPLACE TYPE emp AS OBJECT
Empno NUMBER,
Ename VARCHAR2(50)
[COLOR=royalblue]In step1 I have created object type.[COLOR]
2.CREATE OR REPLACE PACKAGE ref_pkg IS
TYPE tab_emp IS TABLE OF emp;
END ref_pkg;
[COLOR=royalblue]In step2,I have created a table type which is of type emp;[COLOR]
3. CREATE OR REPLACE PROCEDURE p_emp(p_emptab IN ref_pkg.tab_emp) as
BEGIN
FOR I IN 1..p_emptab.COUNT
LOOP
Some code written here
END LOOP;
END;
[COLOR=royalblue]In step3 I have passed tabletype which is of type emp as argument.[COLOR]
Now I need to invoke this procedure from JAVA.
Calling a procedure doesn�t matter.
But how I can map objecttype ? how will java recognize oracle object ?
How can I implement this ?
Any Help/Clues is Appreciated.
Thanks
KrishnaHi Bob
You can call a stored proc from a database control with the jc:sql annotation itself.
Assume a stored proc taking one In parameter
* @jc:sql statement="call sp_updateData({id})"
void call_sp_updateCust(int id);
You can even call stored proc with OUT parameters using
* @jc:sql statement="{call sp_MyProc(?, ?)}"
void call_sp_MyProc(SQLParameter[] params)
You can also call stored functions via db control.
More info and diff ways to call at
http://e-docs.bea.com/workshop/docs81/doc/en/workshop/guide/controls/database/conStoredProcedures.html
Thanks
Vimala
Maybe you are looking for
-
HP Pavilion G6 2230SA Windows 7 64 bit \usb \controller driver
Hi - I'm attempting to install Windows 7 (64Bit) on a HP Pavilion G6 2230SA Notebook which was originally delivered with Windows 8. I appreciate that this is not supported by HP but am simply hoping that someone could help me install the correct driv
-
SYSFAIL in qRFC Outbound Queues - You are not authorized to logon
Dear Guru's, I am new to BASIS. During health check for my company, I came across T-Code SMQ1 and found many Queue Status "SYSFAIL". Error message "You are not authorized to logon to the target system (error code 0)". The souce system: SAP 7.0 Compo
-
Invert colors of single window in i3
Hello! I am using i3 WM (awesome WM! ) and wanted to invert colors. In this forum I found that I can achieve it thusly: xcalib -invert -alter And it works great - skype (oh, how I wish i could replace that buggy and annoying thing with something ligh
-
Self-made link for "Customize page" ?
How do I add a link in a Navigaion Bar that does the same as the built-in "Customize page" link in the built-in header ? Is there any procedure for that purpose? (the link seams to not use a procedure)
-
How to create transparent background video?
I'm trying to add some filters to some some imported text files from Photoshop, but they don't work so well so I need to import them as transparent video files. So, how do I export the text as a ProRes file from FCP with a transparent background so I