Return String from values in int array
Hi
I am very new to Java and have been asked to carry out the following task.
Returns a string version of counterGroups. For each
group it gives its number (1 more than its index) and (in
parentheses) the number of counters currently in that group.
Each is followed by two spaces. Thus if there are 3 groups
with 7, 9 and 11 counters the string returned is
"1(7) 2(9) 3(11) "
I have created an array of type int referenced by counterGroups. It stores values 7,9 and 11.
I have made a start on my method but I am struggling. Any help would be appreciated. Please see my method below to see how far I have got. It does not compile.
public String toStr()
String output1;
String temp;
String other;
for (int i=0; i<counterGroups.length(); i++)
int num1 = counterGroups;
output1 = String.valueOf(num1);
other = "(" + output1 + ")";
temp =
int num1 = counterGroups[0];
output1 = String.valueOf(num1);
return "(" + output1 + ")";
regards
Paul
When you post code, please use[code] and [/code] tags as described in Formatting tips on the message entry page. It makes it much easier to read.
Paste in the exact error message and clearly indicate which line it's complaining about.
Similar Messages
-
Returning strings from OLE2 Word object (Forms 4.5)
Below is an example of how to return string and numeric values from OLE2 objects. In this example the OLE2 object is a MS Word document, and I want to fetch all the bookmarks in the Document into a Forms 4.5 Varchar2. To do this I first need to get the count of bookmarks.
Getting a string property from an OLE2 object is a common OLE2 requirement but is poorly documented. This is the ONLY way it can be done, as OLE2.INVOKE_CHAR returns a single character not a string. Use OLE2.INVOKE_OBJ, then OLE2.GET_CHAR_PROPERTY which does return a string, as shown below, to return a string from an OLE object (or OLE property).
Also note how you can only get the child object from its parent, not the grandchild (etc) object, so multiple (cascading) GET_OBJ_PROPERTY calls are required.
/* by: Marcus Anderson (Anderson Digital) (MarcusAnderson.info) */
/* name: Get_Bookmarks */
/* desc: Returns a double quoted CSV string containing the document*/
/* bookmarks. CSV string will always contain a trailing comma*/
/* EG: "Bookmark1","Bookmark2",Bookmark3",Bookmark4", */
/* NB: This requires that Bookmarks cannot contain " chr */
PROCEDURE Get_Bookmarks (pout_text OUT VARCHAR2)
IS
v_text VARCHAR2(80);
v_num NUMBER(3);
v_arglist OLE2.LIST_TYPE;
v_Application OLE2.OBJ_TYPE;
v_ActiveDoc OLE2.OBJ_TYPE;
v_Bookmarks OLE2.OBJ_TYPE;
v_Item OLE2.OBJ_TYPE;
v_i NUMBER(3);
BEGIN
v_Application := LDWord.MyApplication; -- Word doc opened elsewhere
/* Set v_num = ActiveDocument.Bookmarks.Count */
v_ActiveDoc := OLE2.GET_OBJ_PROPERTY (v_Application, 'ActiveDocument');
v_Bookmarks := OLE2.GET_OBJ_PROPERTY (v_ActiveDoc , 'Bookmarks');
v_num := OLE2.GET_NUM_PROPERTY (v_Bookmarks, 'Count'); -- NB: Returns numeric property
/* Build the output string, pout_text. */
FOR v_i in 1..v_num LOOP
/* Set v_item = ActiveDocument.Bookmarks.Item(v_i) */
v_arglist := OLE2.CREATE_ARGLIST;
OLE2.ADD_ARG (v_arglist, v_i);
v_Item := OLE2.INVOKE_OBJ (v_Bookmarks, 'Item', v_arglist); -- NB: returns parent object (array element)
OLE2.DESTROY_ARGLIST (v_arglist);
/* Set v_text = ActiveDocument.Bookmarks.Item(v_i).Name */
v_text := OLE2.GET_CHAR_PROPERTY (v_Item, 'Name'); -- NB: Returns string/varchar2 property
pout_text := pout_text || '"' || v_text || '",' ;
END LOOP;
END;Please repost in the Forms discussion forum.
- OTN -
Returning strings from Java- C JNI calls
<newbie to JNI>
I have an application written in Java that accesses a .DLL written in C. The .DLL does low-level communication to a hardware device. I've got it all working except for one little problem:
For all of the functions I need to return an integer return code and for some of them I also need to return a string, such as a serial number, version string, or whatever.
Try as I might, I can't find any information on how to return two values from a function call (pretty sure I can't in Java).
SO, I tried to find out how to stuff the version string into a string object variable in the class object the DLL API is defined in. I can't figure out how to do that either...
e.g. the following Java code:
class LLDev {
/* --- Load the .DLL -------------------- */
static { System.loadLibrary("LLDev"); }
/* --- Error Codes ---------------------- */
public static final int LLDOk = 0;
public static final int LLDInitErr = -1;
/* --- Public Variables ----------------- */
public static String DLLVersion;
/* --- Public Methods ------------------- */
public native int InitLLDev();
When I invoke LLDev.InitLLDev() from Java I want the C .DLL function Java_LLDev_InitLLDev to put the DLL Version string in the LLDev object's DLLVersion field and return an error code as the function result.
Is this possible???? Is this the right way to do this?? I tried to define the API with methods that return strings instead of integer return codes but the customer using the class wants all of the methods to return a return code in case of some error (e.g. reading the serial number from the device could fail...)1. In general, the java way to deal with errors is by throwing exceptions, not using return codes. But OK, you are stuck with the user requirement.
2. I suggest you have the native method take as an argument a java object which will accept a string as input. In other words, it has a string "setter".
3. So in your native method, if the function succeeds, it writes your string result to that object, and you can futrther process it when the native method returns a "success" code.
4. There are JNI methods for
o looking up the class of a java object.
o looking up the method of a java class.
o invoking the method. -
Why returning string from java stored function failed ? HELP ME, PLEASE
Hi everybody,
I created java stored function: it's doing http post, parsing xml from http reply, and returning string result.
Sometimes, it doesn't return any value. What can be a reason ?
The high level procedure, has following form:
class SBE {
public static String call(String arg0) {
SBE sbe=new SBE("d:\\oracle\\ora81\\network\\log\\SBE.log");
String result=SBEParser.go(sbe.sendRequest(arg0, ""), sbe.logger);
sbe.logger.log(result);
sbe.logger.log("Finish SBE intetraction");
return result;
PLSQL wrapper has a simple form:
create or replace package PG_SBE as
function CALL(arg0 in varchar2) return varchar2;
end;
create or replace package body PG_SBE as
function CALL(arg0 varchar2) return varchar2 as language java name 'SBE.call(java.lang.String) return java.lang.String';
end;
In log file ("d:\\oracle\\ora81\\network\\log\\SBE.log"), I can find message :
"Finish SBE intetraction"
but query:
select pg_sbe.call("any argument") from dual;
doesn't finish.
What can be a reason ? What can I do to trace stage of convertion java string to varchar ?
Please help me...
Best regards
Marek<BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Stefan Fdgersten ([email protected]):
Maybe your call is wrong... Shouldn't there be a "?" instead of "1"?
Your code:
String myquery = "begin :1 := jspTest; end;";
I provide my (working) call from java as an example. Maybe it is of any help... :)
import java.sql.*;
import oracle.jdbc.driver.*;
public Vector getAllHosts() throws SQLException {
//return getHosts(false, -1);
Connection conn = null;
CallableStatement cs = null;
Vector hostV = new Vector();
try {
conn = getConnection();
String query = "{ ? = call curTestPkg.curTestFunc}";
cs = conn.prepareCall(query);
cs.registerOutParameter(1, OracleTypes.CURSOR);
cs.execute();
ResultSet rs = ((OracleCallableStatement)cs).getCursor(1);
while (rs.next()) {
Host host = new Host(
rs.getInt("hostid")
, rs.getString("name")
, rs.getString("descr")
, rs.getString("os"));
hostV.add(host);
cs.close();
return hostV;
} finally {
close(conn, cs);
<HR></BLOCKQUOTE>
hi Stefan thanx.....even after changing the call statement i get the same error. i changed query string as...
String myquery = "{ ? = call jspTest}";
CallableStatement cst = con.prepareCall(myquery);
Can u please check out my call sepc that i have written in pl/sql and plz let me know it there is any error in that.
PS : THIS IS THE FIRST TIME I AM WORKING WITH PL/SQL AND IT IS URGENT -
Why returning string from java stored function failed ?
I created java stored function: it's doing http post, parsing xml from http reply, and returning string result.
Sometimes, it doesn't return any value. What can be a reason ?
The high level procedure, has following form:
class SBE {
public static String call(String arg0) {
SBE sbe=new SBE("d:\\oracle\\ora81\\network\\log\\SBE.log");
String result=SBEParser.go(sbe.sendRequest(arg0, ""), sbe.logger);
sbe.logger.log(result);
sbe.logger.log("Finish SBE intetraction");
return result;
PLSQL wrapper has a simple form:
create or replace package PG_SBE as
function CALL(arg0 in varchar2) return varchar2;
end;
create or replace package body PG_SBE as
function CALL(arg0 varchar2) return varchar2 as language java name 'SBE.call(java.lang.String) return java.lang.String';
end;
In log file ("d:\\oracle\\ora81\\network\\log\\SBE.log"), I can find message :
"Finish SBE intetraction"
but query:
select pg_sbe.call("any argument") from dual;
doesn't finish.
What can be a reason ? What can I do to trace stage of convertion java string to varchar ?
Please help me...
MarekThis comes up periodically. It just isn't possible using that type of approach. Probably the best you could do is the create an ADT (containing collections) and use that to pass a 'batch' of information.
Hopefully this will get addressed in the next release of the database. -
Returning String[] from C program
How can I return a string[] from a cprogram to a java program?
private native String[] readRFIDData();
JNIEXPORT jobjectArray JNICALL Java_RfidDM_readRFIDData
(JNIEnv *, jobject);
Above is the definition of a jni method .
I have gone through the sample code, but they explain how to return arrays from C++.
Can someone please suggest? I am not good at C.
Much thanks,
AnnThanks Scott.
This code works fine for me...
jclass sclass = (*env)->FindClass(env, "java/lang/String");
jobjectArray ret = (*env)->NewObjectArray(env, length, sclass, NULL);
for(i=0;i<37;i++){
(*env)->SetObjectArrayElement(
env,ret,i,(*env)->NewStringUTF(env,&buf));
printf(&buf[i]); -
Return results from ADEP in AS3 Arrays, not ArrayCollections
Hi all,
Is there any way to force ADEP to return results from data services in simple AS3 Arrays, not ArrayCollections? Here are my situation:
In my project I use ADEP Data Management Services. To connect to ADEP services we use RTMP channel defined in services-config.xml:
<?xml version="1.0" encoding="UTF-8"?>
<services-config>
<services>
<service-include file-path="remoting-config.xml" />
<service-include file-path="proxy-config.xml" />
<service-include file-path="messaging-config.xml" />
<service-include file-path="data-management-config.xml" />
<service-include file-path="managed-remoting-config.xml" />
<service class="fiber.data.services.ModelDeploymentService" id="model-deploy-service" />
<default-channels>
<channel ref="my-rtmp"/>
</default-channels>
</services>
<channel-definition id="my-rtmp" class="mx.messaging.channels.RTMPChannel">
<endpoint url="rtmp://{server.name}:1000" class="flex.messaging.endpoints.RTMPEndpoint"/>
<properties>
<idle-timeout-minutes>20</idle-timeout-minutes>
<block-rtmpt-polling-clients>true</block-rtmpt-polling-clients>
<rtmpt-poll-wait-millis-on-client>0</rtmpt-poll-wait-millis-on-client>
</properties>
</channel-definition>
</services-config>
To manage data in database we defined data services in data-management-config.xml like this:
<?xml version="1.0" encoding="UTF-8"?>
<service id="data-service" class="flex.data.DataService">
<adapters>
<adapter-definition id="java-dao" class="flex.data.adapters.JavaAdapter"/>
<adapter-definition id="mr-java-dao" class="flex.data.adapters.ManagedRemotingDataAdapter" />
<adapter-definition id="actionscript" class="flex.data.adapters.ASObjectAdapter" default="true"/>
</adapters>
<default-channels>
<channel ref="my-rtmp"/>
</default-channels>
<destination id="SomeProduct.SomeItems">
<adapter ref="java-dao" />
<properties>
<source>flex.data.assemblers.SQLAssembler</source>
<scope>application</scope>
<metadata>
<identity property="ID" />
</metadata>
<server>
<database>
<datasource>java:comp/env/jdbc/SP</datasource>
</database>
<actionscript-class>com.somecompany.classes.SomeCoolClass</actionscript-class>
<create-item>
<procedure name="SomeItems_Insert">
<procedure-param property-value="#Session_ID#" />
<procedure-param property-value="#Division_ID#" />
<procedure-param property-value="#Salesrep_ID#" />
<procedure-param property-value="#Area_Code#" />
<procedure-param property-value="#Item_ID#" />
</procedure>
<id-query>SELECT IDENT_CURRENT('Work_Area_Item')</id-query>
</create-item>
<fill>
<name>all</name>
<procedure name="SomeItems_Get">
<procedure-param property-value="#Session_ID#" />
<procedure-param property-value="#Last_Sync_Time#" />
</procedure>
</fill>
<update-item>
<procedure name="SomeItems_Update">
<procedure-param property-value="#Session_ID#" />
<procedure-param property-value="#Division_ID#" />
<procedure-param property-value="#Salesrep_ID#" />
<procedure-param property-value="#Area_Code#" />
<procedure-param property-value="#Item_ID#" />
</procedure>
</update-item>
<delete-item>
<procedure name="SomeItems_Delete">
<procedure-param property-value="#Session_ID#" />
<procedure-param property-value="#Item_ID#" />
</procedure>
</delete-item>
</server>
</properties>
</destination>
</service>
By default, ADEP returns results from SomeProduct.SomeItems destination to Flex side as ArrayCollection of SomeCoolClass instances but I need the data to be returned in simple AS3 Arrays. Recently, I found that there is small optional serialization configuration in channel-definition that should resolve my problem. So I updated my channel-definition in services-config.xml to this:
<channel-definition id="my-rtmp" class="mx.messaging.channels.RTMPChannel">
<endpoint url="rtmp://{server.name}:1000" class="flex.messaging.endpoints.RTMPEndpoint"/>
<properties>
<serialization>
<legacy-collection>true</legacy-collection>
</serialization>
<idle-timeout-minutes>20</idle-timeout-minutes>
<block-rtmpt-polling-clients>true</block-rtmpt-polling-clients>
<rtmpt-poll-wait-millis-on-client>0</rtmpt-poll-wait-millis-on-client>
</properties>
</channel-definition>
However, result are still returned in ArrayCollections.
Any ideas?
Thanks in advanceThom Parker answered this here: http://forums.adobe.com/message/2614570#2614570
Answer copied below:
"The problem is that when the focus is on the text box
it's in edit mode. It's only displaying the value interactively entered by
the user, or as a consequence of the change event. What you need to do is
force the focus off of the text box in code. You can do a little trick
where you bounce it to a tiny transparent field, which then bounds the focus
back so it doesn't look like the focus changed."
What I ended up doing was calling up the dialog box, then using setfocus with no parameters to remove focus from the field, as follows:
this.rawValue = this.dialogBoxFunction(this.rawValue); // passing current value so dialog box defaults to that value
xfa.host.setFocus();
Cheers,
Marty. -
Need to return String from C Program to Java
I need to execute a C Program, which returns a string, from my java application. I was thinking of using RMI to execute this C program. Any idea ?
There are lots of ways to do this. The simplist is probably for the C program to write it's output to a temporary file, and then have the java program read that file. Or, you could open a socket and pass the string that way (say, have your java program listen on a port and have the C program open a connection to the java program and write it's string).
Hope that gives you a starter -
Return String from Oracle stored proc using Excel 2003 VBA
Hi to everyone,
I've got a problem that remains unsolved for many days. I am trying to return a value of an oracle stored procedure using Excel VBA. It might seem trivial, however it's not for someone, who has never done it before...
OS: Win XP SP3
Excel 2003
Ora Client: 11g
By trying different things I have noticed, that I could have troubles with the ODBC-connection. Maybe I am not using the right one. To store data returned from select statements I have an ODBC-Connection (Driver: Oracle in XE), which works perfectly, e.g.:
Sub Extract_Data()
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim db_name, UserName, Password As String
cn.Open db_name, USerName, Password
sql_statement = "SELECT some_text FROM some_table"
Set rs = cn.Execute(sql_statement)
rs.MoveFirst 'jump to the first entry in the data list
Row = 2
While Not rs.EOF
'save the data to a worksheet
ip.Cells(Row, 2) = rs(0).Value
Row = Row + 1
rs.MoveNext
Wend
End Sub
Now I need to execute a stored procedure to return a semi-colon delimited string.
I have tried the following:
Public Sub obj_class()
Dim cn As New ADODB.Connection
Dim strSQL, cn As String
Dim adoCMD As ADODB.Command
Dim adoRS As ADODB.Recordset
Set wb = Excel.ActiveWorkbook
Set ih = wb.Sheets("InfoSheet")
cn.Open db_name, UserName, Password
Set adoCMD = New ADODB.Command
With adoCMD
.ActiveConnection = cn
.CommandText = "S#mdb$stg_da_extr_util.get_all_classes_of_classif"
.CommandType = adCmdStoredProc
.Parameters.Refresh
'------ and here comes the error saying:
'------ could not find the object in the collection corresponding to the name or ordinal reference requested by the application
.Parameters("i_caller").Value = "'STG_DATA_REQUEST'"
.Parameters("i_obj_classif_id").Value = 120
Set adoRS = .Execute()
End With
End Sub
I did asked on the forum:
http://www.access-programmers.co.uk/forums/showthread.php?p=1241667#post1241667
but unfortunately without success.
Could it be, that my ODBC-connection is wrong? When debugging the connection string, I find the Provider=MSDASQL5.1.
I have moderate knowledge in VBA, but absolutely a newbie with Oracle DB. Is there any source of information that can help solving this issue? Looking forward to hearing from you, as I am almost giving up... ;(My VBA is super rusty. Does that error come after Parameters.Refresh, or after .Parameters("i_caller").Value = "'STG_DATA_REQUEST'"?
If it's the second one, you'll need the definition of the stored procedure so you can see what parameters it's expecting. That'd mean you're getting something wrong with the names. -
Trouble returning String from JNI method
I'm a JNI newbie who is going through the SUN online book on JNI and have put together the 2nd program example (right after "helloworld"), but it is not working right. It is supposed to prompt you for a string, then returns the string that you type in. Right now it compiles without error, but it returns only the first word that I type, not the whole sentence. What am I doing wrong?
Here's the code:
Prompt.java
package petes.JNI;
public class Prompt
private native String getLine(String prompt);
static
System.loadLibrary("petes_JNI_Prompt");
public static void main(String[] args)
Prompt p = new Prompt();
String input = p.getLine("Type a line: ");
System.out.println("User typed: " + input);
}petes_JNI_Prompt.h
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class petes_JNI_Prompt */
#ifndef _Included_petes_JNI_Prompt
#define _Included_petes_JNI_Prompt
#ifdef __cplusplus
extern "C" {
#endif
* Class: petes_JNI_Prompt
* Method: getLine
* Signature: (Ljava/lang/String;)Ljava/lang/String;
JNIEXPORT jstring JNICALL Java_petes_JNI_Prompt_getLine
(JNIEnv *, jobject, jstring);
#ifdef __cplusplus
#endif
#endifpetes_JNI_Prompt.c
#include <jni.h>
#include <stdio.h>
#include "petes_JNI_Prompt.h"
JNIEXPORT jstring JNICALL Java_petes_JNI_Prompt_getLine
(JNIEnv *env, jobject this, jstring prompt)
char buf[128];
const jbyte *str;
str = (*env)->GetStringUTFChars(env, prompt, NULL);
if (str == NULL)
return NULL; /* OutOfMemoryError already thrown */
printf("%s", str);
(*env)->ReleaseStringUTFChars(env, prompt, str);
// assume here that user will ty pe in 127 or less characters
scanf("%s", buf);
return (*env)->NewStringUTF(env, buf);
}Thanks in advance!
/PeteOK, I have something that works now by substituting fgets for scanf. I have two other questions:
1) Do I need to free the memory created in buf? Will it allocate memory every time the method is run? Or will it allocate only once on creation, and so is no big deal?
2) A minor question: When I run this program in eclipse, the prompt string is displayed in the console only after the input string is entered and displayed. It works fine when I run it from the command line however. I have a feeling that this is a problem with how Eclipse deals with native methods and perhaps nothing I can fix. Any thoughts?
Thanks
Pete
Addendum, the updated code:
#include <jni.h>
#include <stdio.h>
#include "petes_JNI_Prompt.h"
JNIEXPORT jstring JNICALL Java_petes_JNI_Prompt_getLine
(JNIEnv *env, jobject this, jstring prompt)
char buf[128];
const jbyte *str;
str = (*env)->GetStringUTFChars(env, prompt, NULL);
if (str == NULL)
return NULL; /* OutOfMemoryError already thrown */
printf("%s", str);
(*env)->ReleaseStringUTFChars(env, prompt, str);
//scanf("%s", buf);
fgets(buf, 128, stdin);
return (*env)->NewStringUTF(env, buf);
}Message was edited by:
petes1234 -
How to return string from Applet back to the broser textbox
Hi everybody , i m new to java applet .
I have an applet running on the browser along with a text box. the applet connects to the database and in the end a string should be copied back to the textbox on the browser. I have no idea how do i do it
if anybody can help me.
my applet is working well. its just integration with the browser giving me hard time.
thanks alll in advance
reubenWith "text box", do you mean a text field on a HTML page? If yes, you could use the JSObject class from netscape to issue a Javascript call to the page similar to window.document.form[0].textfieldname and provide the string. The Applet tag must contain the MAYSCRIPT=true argument to allow the Applet to issue Javascript commands.
Frankl -
Array - return greatest value in the array
I am trying to write a program that for the method 'greatest' it will return the greates value in the array between the elements beginning and end.
Below is my code. No errors but I am not getting the desired results.
My output:
2
4
1
5
3
6
My code:
public class Test {
public void printArray(int x[]){
for (int i=0; i < x.length; i++)
System.out.println(x[i] + "");
System.out.println("\n");
public static int greatest(int x[], int beginning, int end){
int i;
int index = 0;
int largest = 0;
for(int z = 0; z < x.length; z++)
if(largest < x[z])
largest = x[z];
index = z;
return index;
public static void main(String[] args){
Test program = new Test();
int a[] = {2,4,1,5,3,6};
int val = greatest(a,0,a.length-1);
program.printArray(a);
}Please, I just would like someone to point out where I need to focus. I do not want anyone to write this. Yes - its for college.
Please and Thank youKayaman - once again you have been helpful. Thank you.
So I went to the paper and thought about the logic and rewrote what I had in the method greatest.
* I am passing to the method, successfully calculating the greatest value, but not returning a varialble so the variable val is still not used. Or if I am returning a value I dont see it. *
So, I need to return the value and then call the printArray method to print the outcome.
What line needs to be addressed - remember anyone else reading this, please do not write it for me :-)
public static int greatest(int x[], int beginning, int end){
int max = x[0];
for (int i = 0; i < x.length; i++)
if (max < x)
max = x[i];
System.out.println("The greatest: " + max);
return max;
Please and Thank you :-) -
Concatenate strings from more rows into one row.
Hi,
what's the name of that analytical function (or connect by) that
would return strings from more rows as one row concatenated. i.e.:
(I know this is possible using regular pipelined functions.)
ROW1: STR1
ROW2: STR2
ROW3: STR3
select tadah().... from ...
result:
ROW1: STR1 STR2 STR3Thanks.Hi,
Here's a basic example of SYS_CONNECT_BY_PATH.
The query below produces one row of output per department, containing a list of the employees in that department, in alphabetioc order.
WITH got_rnum AS
SELECT ename
, deptno
, ROW_NUMBER () OVER ( PARTITION BY deptno
ORDER BY ename
) AS rnum
FROM scott.emp
-- WHERE ... -- Any filtering goes here
SELECT deptno
, LTRIM ( SYS_CONNECT_BY_PATH ( ename
, ',' -- Delimiter, must never occur in ename
) AS ename_list
FROM got_rnum
WHERE CONNECT_BY_ISLEAF = 1
START WITH rnum = 1
CONNECT BY rnum = PRIOR rnum + 1
AND deptno = PRIOR deptno
;Output:
. DEPTNO ENAME_LIST
10 CLARK,KING,MILLER
20 ADAMS,FORD,JONES,SCOTT,SMITH
30 ALLEN,BLAKE,JAMES,MARTIN,TURNER,WARDThe basic CONNECT BY query would produce one row per employee, for example:
. DEPTNO ENAME_LIST
10 ,CLARK
10 ,CLARK,KING
10 ,CLARK,KING,MILLER
20 ,ADAMS
20 ,ADAMS,FORD
...The WHERE clause: <tt>WHERE CONNECT_BY_ISLEAF = 1</tt> means that we'll only see the last row for every department.
SYS_CONNECT_BY_PATH (which is a row function, by the way, not an analytic fucntion) puts a delimiter (',' in the example above) before every item on the list, including the first one.
The query above uses LTRIM to remove the delimiter at the very beginning.
WM_COMCAT (or the equivalent user-defined STRAGG, which you can copy from AskTom) is much more convenient if order is not important. -
Interpreting a string variables value & returning a constants int value
Let's say I have the following:
private string ballColour;
private static final int RED = 1;
the value of the variable ballColour is obtained via keyboard input from the user.
lets say they enter in the string red (or RED, whatever case, it's converted to lowercase & stored in ballColour).
I now want to create a method which returns the integer value of the RED constant (i.e. if the user enters a ballColour of red, I want to return the integer value 1 - to a new variable called intValueOfBallColour).
I've no idea how to do this & i'm sure it isn't that complicated, but I'm having trouble with incompatible data types.
Please help!Hmm...not really.
I have a class & a driver (though the driver really
only contains the system.out.println & gets the
user's input).
The class should be doing all the work & whilst our
code is somewhat similar, i.e. same kind of
principle, it differs quite a bit.
For example, I'm not sure what this section of your
code is for:
public static void main(String[] args) {
ballColour = args[0];
setIntValueOfBall();
System.out.println("intValuOfBall=" +
Ball=" + intValuOfBall);
My class contains many more methods/constructors.
it really should work. I'll have a look at your code
more & see if i can get it work. It's so
straightforward. So frustrating as well.
Thanks so much for your help.you can post your whole code (between code tags), that'll help people spot the problem -
Returning int array from C to Java as method parameter
Hello,
I've been trying to accomplish this
Java
int[] myArray = ... (filled with some data);
int retCode = myNativeCall(myArray);
if(retCode == 0)
doSomethingWith(myArray); //myArray gets overwritten with new data (with new size also) during the native call...
C
JNIEXPORT jint JNICALL Java_GenChav_rsaEncrypt(JNIEnv *env, jobject obj, jintArray myArray){
jintArray outbuf;
int[] new_array = .. // some function will fill this....
int new_array_length = ...//some function will give me the new size, not big, 512 max...
jint tmp[new_array_length]; //allocate..need something more ??
memcpy(tmp, new_array, new_array_lenght);
outbuf=(*env)->NewIntArray(env, new_array_length);
(*env)->SetIntArrayRegion(env, outbuf, 0, new_array_length, tmp);
myArray=outbuf;
I tought this way I would have a updated myArray ints on the Java program...
Any thought??user5945780 wrote:
Ok, let's try to be constructive here...
How I do implement a return type for my method like a int array ?First realized it has nothing to do with JNI. So the same question and answer applies to java only.
>
like:
int[] return = myNativeCall();
Yes.
Then I will look for return[0], if it is == to 0, fine, it means a successful calculation by the native code. Not sure what that means. The structure of what you return it up to you.
It can help when you are unsure of what to do in JNI....write a pseudo representation of what you want to do in a java method. Then translate that java method into JNI, everything in the pseudo method must be in the JNI code.
Maybe you are looking for
-
How can i display Intaractive report ,
Hi Experts, How can i display Intaractive report , In basic List i want to print EMP data on top. and infotype number and infotype text . In secondary list infotype data on which the user intactive with infotype no.. If user intaract the 0001 infotyp
-
iTunes has detected an iPhone in recovery mode. You must restore this iPhone before it can be used with iTunes.
-
Batch file renaming in Aperture??
I have need to rename several files as a batch. Aperture can get me 99% of the way there, but there´s one thing I can´t seem to do... The naming scheme I need is [filname]_[yyyymmdd-hhmmss].jpg Where yyyymmdd is year, month, day and hhmmss is hours,
-
How can I define same Price Conditions for two different Sales Deals ??
I need to define for the same price condition, lets say ZPMP, two different values or condition records, for two different sales deals and the same valid dates For example, Sales deal 1, ZPMP equal to USD 15 and valid dates from 04/15/08 to 04/30/08.
-
Can ABAP Webdynpro use interactive form or just print only
I saw a diagram in the ADS configuration Guide for SP10 what shows that the ABAP side of the configuration is only for print forms. Now my question is: can ABAP Webdynpro include an interactive Adobe form in the view? Has anyone done it before? It se