To fetch subsring from below string(Urgent)
Dear All,
pls help me in getting this done,
i am having string as below.
1567|djfhdjkhkld
14|dsjfhsdjka
767|sdfhajksdjafk
3625763298|sdhafjksdjalfk
i need to get the string before the pipe (|) as i want to implement for dynamic case as well.
Thanks in advance for resolution....
regards,
shantha
873618 wrote:
Dear All,
pls help me in getting this done,
i am having string as below.
1567|djfhdjkhkld
14|dsjfhsdjka
767|sdfhajksdjafk
3625763298|sdhafjksdjalfk
i need to get the string before the pipe (|) as i want to implement for dynamic case as well.
Thanks in advance for resolution....
regards,
shantha
Hi,
see below example
SQL> select * from t1;
A
1567|djfhdjkhkld
14|dsjfhsdjka
767|sdfhajksdjafk
SQL> select substr(a,1, instr(a,'|',1)-1) from t1;
SUBSTR(A,1,INSTR(A,'|',1)-1)
1567
14
767Cheers
Similar Messages
-
Urgent : Making heirarchy report by fetching data froma single table
Hi,
I am making a report in which i hae to display the data like this:-
If there is a material and it contains batch and that batch furhter conatins sub-batches of it.
The problem is dat all the data which is to be displayed is from the table CHVW and i am not able to display the data in hierarchy by fetching it from a single table.
plzz guide me how to do dis as it is really urgent and points will be deinftely rewarded.
help me out.
reagrds,
ric.s
Edited by: ric .s on Apr 30, 2008 10:31 AMHi,
Check the sample Report.
REPORT z_alv_hierseq_list.
Program with FM REUSE_ALV_HIERSEQ_LIST_DISPLAY *
TYPE-POOLS: slis. " ALV Global types
CONSTANTS :
c_x VALUE 'X',
c_gt_vbap TYPE slis_tabname VALUE 'GT_VBAP',
c_gt_vbak TYPE slis_tabname VALUE 'GT_VBAK'.
SELECTION-SCREEN :
SKIP, BEGIN OF LINE,COMMENT 5(27) v_1 FOR FIELD p_max. "#EC NEEDED
PARAMETERS p_max(02) TYPE n DEFAULT '10' OBLIGATORY.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN :
SKIP, BEGIN OF LINE,COMMENT 5(27) v_2 FOR FIELD p_expand. "#EC NEEDED
PARAMETERS p_expand AS CHECKBOX DEFAULT c_x.
SELECTION-SCREEN END OF LINE.
TYPES :
1st Table
BEGIN OF ty_vbak,
vbeln TYPE vbak-vbeln, " Sales document
kunnr TYPE vbak-kunnr, " Sold-to party
netwr TYPE vbak-netwr, " Net Value of the Sales Order
erdat TYPE vbak-erdat, " Creation date
waerk TYPE vbak-waerk, " SD document currency
expand TYPE xfeld,
END OF ty_vbak,
2nd Table
BEGIN OF ty_vbap,
vbeln TYPE vbap-vbeln, " Sales document
posnr TYPE vbap-posnr, " Sales document
matnr TYPE vbap-matnr, " Material number
arktx TYPE vbap-arktx, " Material description
netwr TYPE vbap-netwr, " Net Value of the Sales Order
waerk TYPE vbap-waerk, " SD document currency
END OF ty_vbap.
DATA :
1st Table
gt_vbak TYPE TABLE OF ty_vbak,
2nd Table
gt_vbap TYPE TABLE OF ty_vbap.
INITIALIZATION.
v_1 = 'Maximum of records to read'.
v_2 = 'With ''EXPAND'' field'.
START-OF-SELECTION.
Read Sales Document: Header Data
SELECT vbeln kunnr netwr waerk erdat
FROM vbak
UP TO p_max ROWS
INTO CORRESPONDING FIELDS OF TABLE gt_vbak.
IF gt_vbak[] IS NOT INITIAL.
Read Sales Document: Item Data
SELECT vbeln posnr matnr arktx netwr waerk
FROM vbap
INTO CORRESPONDING FIELDS OF TABLE gt_vbap
FOR ALL ENTRIES IN gt_vbak
WHERE vbeln = gt_vbak-vbeln.
ENDIF.
END-OF-SELECTION.
PERFORM f_display.
Form F_DISPLAY
FORM f_display.
Macro definition
DEFINE m_fieldcat.
ls_fieldcat-tabname = &1.
ls_fieldcat-fieldname = &2.
ls_fieldcat-ref_tabname = &3.
ls_fieldcat-cfieldname = &4. " Field with currency unit
append ls_fieldcat to lt_fieldcat.
END-OF-DEFINITION.
DEFINE m_sort.
ls_sort-tabname = &1.
ls_sort-fieldname = &2.
ls_sort-up = c_x.
append ls_sort to lt_sort.
END-OF-DEFINITION.
DATA:
ls_layout TYPE slis_layout_alv,
ls_keyinfo TYPE slis_keyinfo_alv,
ls_sort TYPE slis_sortinfo_alv,
lt_sort TYPE slis_t_sortinfo_alv," Sort table
ls_fieldcat TYPE slis_fieldcat_alv,
lt_fieldcat TYPE slis_t_fieldcat_alv." Field catalog
ls_layout-group_change_edit = c_x.
ls_layout-colwidth_optimize = c_x.
ls_layout-zebra = c_x.
ls_layout-detail_popup = c_x.
ls_layout-get_selinfos = c_x.
IF p_expand = c_x.
ls_layout-expand_fieldname = 'EXPAND'.
ENDIF.
Build field catalog and sort table
m_fieldcat c_gt_vbak 'VBELN' 'VBAK' ''.
m_fieldcat c_gt_vbak 'KUNNR' 'VBAK' ''.
m_fieldcat c_gt_vbak 'NETWR' 'VBAK' 'WAERK'.
m_fieldcat c_gt_vbak 'WAERK' 'VBAK' ''.
m_fieldcat c_gt_vbak 'ERDAT' 'VBAK' ''.
m_fieldcat c_gt_vbap 'POSNR' 'VBAP' ''.
m_fieldcat c_gt_vbap 'MATNR' 'VBAP' ''.
m_fieldcat c_gt_vbap 'ARKTX' 'VBAP' ''.
m_fieldcat c_gt_vbap 'NETWR' 'VBAP' 'WAERK'.
m_fieldcat c_gt_vbap 'WAERK' 'VBAP' ''.
m_sort c_gt_vbak 'KUNNR'.
m_sort c_gt_vbap 'NETWR'.
ls_keyinfo-header01 = 'VBELN'.
ls_keyinfo-item01 = 'VBELN'.
ls_keyinfo-item02 = 'POSNR'.
Dipslay Hierarchical list
CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
EXPORTING
i_callback_program = sy-cprog
i_callback_user_command = 'USER_COMMAND'
is_layout = ls_layout
it_fieldcat = lt_fieldcat
it_sort = lt_sort
i_tabname_header = c_gt_vbak
i_tabname_item = c_gt_vbap
is_keyinfo = ls_keyinfo
i_save = 'A'
TABLES
t_outtab_header = gt_vbak
t_outtab_item = gt_vbap
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM. " F_LIST_DISPLAY
Form USER_COMMAND *
FORM user_command USING i_ucomm TYPE sy-ucomm
is_selfield TYPE slis_selfield. "#EC CALLED
DATA ls_vbak TYPE ty_vbak.
CASE i_ucomm.
WHEN '&IC1'. " Pick
CASE is_selfield-tabname.
WHEN c_gt_vbap.
WHEN c_gt_vbak.
READ TABLE gt_vbak INDEX is_selfield-tabindex INTO ls_vbak.
IF sy-subrc EQ 0.
Sales order number
SET PARAMETER ID 'AUN' FIELD ls_vbak-vbeln.
Display Sales Order
CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.
ENDIF.
ENDCASE.
ENDCASE.
ENDFORM. " USER_COMMAND
END OF PROGRAM Z_ALV_HIERSEQ_LIST ******************
Regards,
Raj. -
Exception when fetch message from pop3 mail server
below exception occur whenever i fetched message from pop3 mail server. Its occur for perticular message. so i catched javax.mail.MessagingException but this is not working and rest of the messages skips.
plz help me , its urgent.
javax.mail.MessagingException: error loading POP3 headers;
nested exception is:
java.io.IOException: Unexpected response: ------=_NextPart_000_01B9_01C8
A1AB.148BE090
at com.sun.mail.pop3.POP3Message.loadHeaders(POP3Message.java:467)
at com.sun.mail.pop3.POP3Message.getHeader(POP3Message.java:275)
at javax.mail.internet.MimeMessage.getSubject(MimeMessage.java:717)
at fetch1.<init>(fetch1.java:92)
at fetch1.main(fetch1.java:185)
Caused by: java.io.IOException: Unexpected response: ------=_NextPart_000_01B9_0
1C8A1AB.148BE090
at com.sun.mail.pop3.Protocol.simpleCommand(Protocol.java:361)
at com.sun.mail.pop3.Protocol.multilineCommand(Protocol.java:373)
at com.sun.mail.pop3.Protocol.top(Protocol.java:271)
at com.sun.mail.pop3.POP3Message.loadHeaders(POP3Message.java:451)
... 4 more
Press any key to continue...Code :-
import java.util.*;
import java.io.*;
import javax.mail.*;
import javax.mail.Flags.*;
import javax.mail.internet.*;
import javax.activation.*;
public class fetch3
fetch3()
try
// Setup properties
Properties props = System.getProperties();
props.put("mail.pop3.host","myMailserver ip");
// Setup authentication, get session
Authenticator auth = new PopupAuthenticator();
Session session = Session.getDefaultInstance(props, auth);
// Get the store
Store store = session.getStore("pop3");
store.connect();
// Get folder
Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_WRITE);
Flags flag = folder.getPermanentFlags();
// Get directory
Message message[] = folder.getMessages();
// Display from (only first) and subject of messages
for (int i=0, n=message.length; i<n; i++)
System.out.println ("------------------------------------------------------");
System.out.println(" From : "+message.getFrom()[0]);
System.out.println(" To : "+message[i].getAllRecipients()[0]+" "+message[i].getAllRecipients().length);
System.out.println(" Replyto : "+message[i].getReplyTo()[0]);
System.out.println(" Subject : "+message[i].getSubject());
System.out.println ("type "+message[i].getContent());
Part messagePart=message[i];
Object content=messagePart.getContent();
// -- or its first body part if it is a multipart message --
if (content instanceof Multipart)
messagePart=((Multipart)content).getBodyPart(0);
// System.out.println("[ Multipart Message ]");
// -- Get the content type --
String contentType=messagePart.getContentType();
// -- If the content is plain text, we can print it --
System.out.println("CONTENT:"+contentType);
if (contentType.startsWith("text/plain") || contentType.startsWith("text/html") || contentType.startsWith("multipart/alternative"))
InputStream is = messagePart.getInputStream();
BufferedReader reader
=new BufferedReader(new InputStreamReader(is));
String thisLine=reader.readLine();
while (thisLine!=null)
System.out.println(thisLine);
thisLine=reader.readLine();
System.out.println ("------------------------------------------------------");
// Close connection
folder.close(false);
store.close();
catch(Exception e)
e.printStackTrace();
public static void main(String s[])
new fetch3();
Regards
Sagar
Edited by: sagar_birari on 23 Apr, 2008 1:18 PM
Edited by: sagar_birari on 23 Apr, 2008 4:30 PMit shows below output
C:\>java -Dmail.debug=true fetch1
DEBUG: JavaMail version 1.4ea
DEBUG: java.io.FileNotFoundException: C:\Program Files\Java\jre1.5.0_06\lib\java
mail.providers (The system cannot find the file specified)
DEBUG: !anyLoaded
DEBUG: not loading resource: /META-INF/javamail.providers
DEBUG: successfully loaded resource: /META-INF/javamail.default.providers
DEBUG: Tables of loaded providers
DEBUG: Providers Listed By Class Name: {com.sun.mail.smtp.SMTPSSLTransport=javax
.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsyste
ms, Inc], com.sun.mail.smtp.SMTPTransport=javax.mail.Provider[TRANSPORT,smtp,com
.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc], com.sun.mail.imap.IMAPSSLSt
ore=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsyst
ems, Inc], com.sun.mail.pop3.POP3SSLStore=javax.mail.Provider[STORE,pop3s,com.su
n.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], com.sun.mail.imap.IMAPStore=jav
ax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc],
com.sun.mail.pop3.POP3Store=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP
3Store,Sun Microsystems, Inc]}
DEBUG: Providers Listed By Protocol: {imaps=javax.mail.Provider[STORE,imaps,com.
sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], imap=javax.mail.Provider[STOR
E,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], smtps=javax.mail.Prov
ider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc],
pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems
, Inc], pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun
Microsystems, Inc], smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.S
MTPTransport,Sun Microsystems, Inc]}
DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
DEBUG: !anyLoaded
DEBUG: not loading resource: /META-INF/javamail.address.map
DEBUG: java.io.FileNotFoundException: C:\Program Files\Java\jre1.5.0_06\lib\java
mail.address.map (The system cannot find the file specified)
DEBUG: getProvider() returning javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.
POP3Store,Sun Microsystems, Inc]
DEBUG POP3: connecting to host "pop3_server_ip", port 110, isSSL false
S: +OK Hello there.
C: USER [email protected]
S: +OK Password required.
C: PASS mypass
S: +OK logged in.
DEBUG: setDebug: JavaMail version 1.4ea
C: STAT
S: +OK 16 143077
C: NOOP
S: +OK Yup.Edited by: sagar_birari on 24 Apr, 2008 1:16 PM
Edited by: sagar_birari on 24 Apr, 2008 1:18 PM -
Fetching record from table and displaying in JSP while loading page -struts
Hi all,
I have a problem relating to struts .
I am fetching records from database and I want to diaplay those records in corresponding fields in the jsp page.
I am using Struts MVC Framework.
I am giving the sample code below.
In my action class i am giving the following code.
String sql="Select empname from emp where empcode='1' ";
ResultSet rs=S.executeQuery(sql);
if(rs.next()){
EditForm e=new EditForm();
e.setEmpname(rs.getString(1));
In my Action Form
I gave setter and getter methods for Empname
public String getEmpname() {
return empname;
public void setEmpname(String empname) {
this.empname = empname;
In my jsp gave
<html:form method="POST" action="submitForm.do?action=1" >
<html:text property="empname" />
</html:form>
The targets given are correct and it is being redirected.
But the value is not displaying in the textbox while the jsp is loading.
There is a record for the sql query.
Anybody please help me out
It is very urgent
Thank You
ParvathyNow in the following code, why are u creating a new form?
Why dont you use the form which is input to the Action Class's execute methof?
if(rs.next()){
EditForm e=new EditForm();
e.setEmpname(rs.getString(1));
}Thanks and regards,
Pazhanikanthan. P -
I have a table-valued function that run in sql 2005 and when try to execute in sql 2008 r2, return the next "Conversion failed when converting date and/or time from character string".
USE [Runtime]
GO
/****** Object: UserDefinedFunction [dbo].[f_Pinto_Graf_P_Opt] Script Date: 06/11/2013 08:47:47 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION [dbo].[f_Pinto_Graf_P_Opt] (@fechaInicio datetime, @fechaFin datetime)
-- Declaramos la tabla "@Produc_Opt" que será devuelta por la funcion
RETURNS @Produc_Opt table ( Hora datetime,NSACOS int, NSACOS_opt int)
AS
BEGIN
-- Crea el Cursor
DECLARE cursorHora CURSOR
READ_ONLY
FOR SELECT DateTime, Value FROM f_PP_Graficas ('Pinto_CON_SACOS',@fechaInicio, @fechaFin,'Pinto_PRODUCTO')
-- Declaracion de variables locales
DECLARE @produc_opt_hora int
DECLARE @produc_opt_parc int
DECLARE @nsacos int
DECLARE @time_parc datetime
-- Inicializamos VARIABLES
SET @produc_opt_hora = (SELECT * FROM f_Valor (@fechaFin,'Pinto_PRODUC_OPT'))
-- Abre y se crea el conjunto del cursor
OPEN cursorHora
-- Comenzamos los calculos
FETCH NEXT FROM cursorHora INTO @time_parc,@nsacos
/************ BUCLE WHILE QUE SE VA A MOVER A TRAVES DEL CURSOR ************/
WHILE (@@fetch_status <> -1)
BEGIN
IF (@@fetch_status = -2)
BEGIN
-- Terminamos la ejecucion
BREAK
END
-- REALIZAMOS CÁLCULOS
SET @produc_opt_parc = (SELECT dbo.f_P_Opt_Parc (@fechaInicio,@time_parc,@produc_opt_hora))
-- INSERTAMOS VALORES EN LA TABLA
INSERT @Produc_Opt VALUES (@time_parc,@nsacos, @produc_opt_parc)
-- Avanzamos el cursor
FETCH NEXT FROM cursorHora INTO @time_parc,@nsacos
END
/************ FIN DEL BUCLE QUE SE MUEVE A TRAVES DEL CURSOR ***************/
-- Cerramos el cursor
CLOSE cursorHora
-- Liberamos los cursores
DEALLOCATE cursorHora
RETURN
ENDYou can search the forums for that error message and find previous discussions - they all boil down to the same problem. Somewhere in your query that calls this function, the code invoked implicitly converts from string to date/datetime. In general,
this works in any version of sql server if the runtime settings are correct for the format of the string data. The fact that it works in one server and not in another server suggests that the query executes with different settings - and I'll assume for
the moment that the format of the data involved in this conversion is consistent within the database/resultset and consistent between the 2 servers.
I suggest you read Tibor's guide to the datetime datatype (via the link to his site below) first - then go find the actual code that performs this conversion. It may not be in the function you posted, since that function also executes other functions.
You also did not post the query that calls this function, so this function may not, in fact, be the source of the problem at all.
Tibor's site -
Fetching Values from Ancestors based on UDA condition
Hi,
I have a typical requirement where I need to fetch data from the ancestor based on a particular UDA condition.
For ex: See the below exhibit
Dimension
----A (UDA: xyz)
-------B (UDA: xyz)
------------C
-----------------D
-----------------E (UDA: xyz)
-----------------F
Requirement: (Should be a member formula on a particular Account member - No calc script)
1- Calculations should happen only for members with UDA 'xyz'
2- The value for member 'E' should come from its first immediate ancestor with same UDA as'E' has - in the above case the value of 'E' should be from member 'B' (and not 'A')
similarly while calculating member 'B', it should take value from member 'A'
I have tried the member formula like:
@ANCEST(DimName,@Currmbr(Dimname)) AND @UDA(DimName,'xyz)
but this gives 'DOUBLE VALUE STRING' error.
Can anyone help me with how I should develop the logic for this requirement.
Thanks again.DEAR ALL !
I HAVE SOLVED THE ISSUE BY USING ANOTHER BAdI " HRBAS00_STRUAUTH".
THANKS AND REGARDS,
S.SURESH -
Fetch data from n tables mdb file
hello,
I am able to fetch data from n no. of columns in a table but i want to fetch data from n no. of tables as well... below is part of the code:
while (res.next())
for(int j=1;j<=tbn;j++) --- tbn no.of tables
System.out.println("table counter");
for (int i = 1; i <= cno; i++) --- cno no. of columns
phno = res.getString(i);
v = new Vector();
v.addElement(phno);
System.out.println(v);
}wow thanks for quick reply,,, i would like to fetch data from atleast 2 tables ...below is my code.... its printing the last row of the second table
public Vector msdata(String filepath)
String databaseFolder=filepath;
String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb)};DBQ="+filepath;
String userNameFromDB = "", pwdFromDB = "";
try
Class.forName(driver);
conn = DriverManager.getConnection(url,"","");
stmt = conn.createStatement();
DatabaseMetaData dbmd = conn.getMetaData();
String[] types = {"TABLE"};
String colnum = null;
ResultSet tables = dbmd.getTables(null, null,"%", types);
// Get the table names
while (tables.next())
// Get the table name
tableName = tables.getString(3);
tbn++;
System.out.println("Table Name: " + tableName);
res = stmt.executeQuery("select * from "+tableName);
ResultSetMetaData resultsMD = res.getMetaData();
cno = resultsMD.getColumnCount() ;
System.out.println("number of columns: " + cno);
System.out.println("number of tables: " +tbn);
while (res.next())
for(int j=1;j<=tbn;j++)
while (res.next())
//System.out.println(tbn);
for (int i=1; i<= cno;i++)
phno = res.getString(i);
System.out.println(phno);
v = new Vector();
v.addElement(phno);
System.out.println(v);
res.close();
tables.close();
stmt.close();
conn.close();
catch(Exception ee)
System.out.println("driver error............");
ee.printStackTrace();
return v;
} -
How to find number from text string??
Hi All,
Can you tell me how to find/ fetch number from string?
is there any function module for this.?
for example , I have string like "+++++1000000589+++"
and I need to fetch the invoice no 1000000589 from the above string..then How to do that? Letters may come first or number may come first and latter text...
Regards,
MrunalYou can do like this.
The below mentioned is code separate material
DO 18 TIMES.
LV_C = LV_C + 1.
LV_C1 = LV_C - 1.
IF GW_MATNR-MATNR+LV_C1(1) CN '0,1,2,3,4,5,6,7,8,9' .
IF ( ( LV_MAT EQ SPACE ) ) ." and ( lv_prefix eq space ) ) .
LV_PREFIX = 'X'.
CONCATENATE GW_TEMP-PREFIX GW_MATNR-MATNR+LV_C1(1) INTO
GW_TEMP-PREFIX.
ELSE.
LV_SUFFIX = 'X'.
CONCATENATE GW_TEMP-SUFFIX GW_MATNR-MATNR+LV_C1(1) INTO
GW_TEMP-SUFFIX.
ENDIF.
ELSEIF ( ( LV_SUFFIX EQ SPACE ) ) .
LV_MAT = 'X'.
CONCATENATE GW_TEMP-MATNR1 GW_MATNR-MATNR+LV_C1(1) INTO
GW_TEMP-MATNR1.
ELSEIF ( ( LV_MAT EQ 'X' ) ) .
CONCATENATE GW_TEMP-SUFFIX GW_MATNR-MATNR+LV_C1(1) INTO
GW_TEMP-SUFFIX.
ENDIF.
ENDDO. -
RFC fetching data from table which is not commited
Hi Experts,
I have a query regarding commit work.Below is the RFC that i have written
FUNCTION ZBAPI_CREATE.
*"*"Local Interface:
*" TABLES
*" IT_ZABAP_RFC STRUCTURE ZBAPI_RFC_STR OPTIONAL
*" RETURN STRUCTURE BAPIRET2 OPTIONAL
CALL FUNCTION 'ZBO_BAPI_CREATE'
TABLES
IT_ZABAP_RFC = IT_ZABAP_RFC
RETURN = return
Break-point.
DATA lt TYPE TABLE OF ZBAPI_RFC_STR_MAIN.
CALL FUNCTION 'ZBAPI_SEARCH_RANGE'
* EXPORTING
* IS_STR =
TABLES
ET_TAB = lt
* RETURN =
ENDFUNCTION.
here in first RFC call i am creating a record in ZTABLE , and then at break-point
i check the ZTABLE where it does not create any record because data is not commited into ZTABLE upto this point, but just after it i have written code for fetching data from ZTABLE but i am able to get this new record in lt.
Can anybody please explain that from where this serach RFC is providing data because inside serach i am simply selecting data from ZTABLE.
Regards,
Abhishek Bajpai
Edited by: ABHISHEK BAJPAI on Jan 28, 2009 1:12 PMHi Thomas,
Thanks for reply , i checked in ZTABLE ,before search RFC call data is not there but if i commit explicitly only then it is showing data in ZTABLE. Actually my requirement is different -
I have two RFCs 1. Create 2. Search , Now from web dynpro user will call first Create RFCs but at this point it should not insert record in ZTABLE and just after it user will call another search RFC and in this search he should be able to get these newly created records.
I want to have the functionality which a user gets when working with normal database front end like SQLPLus for Oracle. In these scenarios we see that whenever user does any insert or update the data sits in the table but still it is not committed. So there he fires Select query he sees the inserted data. But if he logs off from SQL PLUS and then logs in again, and fires Select query he does not see the data as it was not committed. I want a similiar functionalty in which if user inserts the data through Create RFC and fires the Select query through Search RFC then he can see the newly Created data also even though this data is not committed.
Although if i call create RFC in update task it will not update ZTABLE but in this situation , if user will call search RFC he will not be able to get newly created records.
So my requirement is that i should be able to get those records which are not commited in ZTABLE .If you have still any doubt regarding my question then please let me know.
Regards,
Abhishek -
Select query taking too much time to fetch data from pool table a005
Dear all,
I am using 2 pool table a005 and a006 in my program. I am using select query to fetch data from these table. i.e. example is mentioned below.
select * from a005 into table t_a005 for all entries in it_itab
where vkorg in s_vkorg
and matnr in s_matnr
and aplp in s_aplp
and kmunh = it_itab-kmunh.
here i can't create index also as tables are pool table...If there is any solutions , than please help me for same..
Thanks ,it would be helpful to know what other fields are in the internal table you are using for the FOR ALL ENTRIES.
In general, you should code the order of your fields in the select in the same order as they appear in the database. If you do not have the top key field, then the entire database is read. If it's large then it's going to take a lot of time. The more key fields from the beginning of the structure that you can supply at faster the retrieval.
Regards,
Brent -
FETCHING DATA FROM A TABLE USING ARRAYLIST
how can we fetch data from database using arraylist????
Hi ,
This is the way to fetch data into 2d array , you can customize to fetch in array list .
we will assume that we have stm as Statement and rs as ResultSet
rs = stm.executeQuery("select * from emp");
int noOfColumns = rs.getMetaData.getColumnCount();
rs.last();
int noOfRows = rs.getRow;
rs.befpreFirst();
String [][] result = new String[noOfRows][noOfColumns];
for(int i = 0 ; i<noOfColumns;i++){
rs.next();
for(int y = 0;y<noOfColumns;y++){
result[i][y]=rs.getString(y+1);
rs.close; -
Setting the name of a new object from a string
Is there anyway I can set the object name of a newly created
object from a string?
eg.
(the code below generates a compile time error on the
variable declaration)
public function addText(newTxt:String, txt:String,
format:TextFormat):void {
var
this[newTxt]:TextField = new TextField();
this[newTxt].autoSize = TextFieldAutoSize.LEFT;
this[newTxt].background = true;
this[newTxt].border = true;
this[newTxt].defaultTextFormat = format;
this[newTxt].text = txt;
addChild(this[newTxt]);
called using>
addText("mytxt", "test text", format);
I could then reference the object later on without using
array notation using mytxt.border = false; for example
There are many a time when I want to set the name of a new
object from a string.
In this example I have a function that adds a new text object
to a sprite.
The problem is, if I call the function more than once then
two textfield objects will exist, both with the same name. (either
that or the old one will be overwritten).
I need a way of setting the name of the textfield object from
a string.
using
var this[newTxt]:TextField = new TextField()
does not work, If I take the "var" keyword away it thinks it
a property of the class not an object.
resulting in >
ReferenceError: Error #1056: Cannot create property newTxt on
Box.
There must be a way somehow to declare a variable that has
the name that it will take represented in a string.
Any help would be most welcome
ThanksUsing:
var this[newTxt]:TextField = new TextField()
is the right approach.
You can either incrment an instance variable so that the name
is unique:
newTxt = "MyName" + _globalCounter;
var this[newTxt]:TextField = new TextField();
globalCounter ++;
Or store the references in an array:
_globalArray.push(new TextField());
Tracy -
How can we improve the performance while fetching data from RESB table.
Hi All,
Can any bosy suggest me the right way to improve the performance while fetching data from RESB table. Below is the select statement.
SELECT aufnr posnr roms1 roanz
INTO (itab-aufnr, itab-pposnr, itab-roms1, itab-roanz)
FROM resb
WHERE kdauf = p_vbeln
AND ablad = itab-sposnr+2.
Here I am using 'KDAUF' & 'ABLAD' in condition. Can we use secondary index for improving the performance in this case.
Regards,
HimanshuHi ,
Declare intenal table with only those four fields.
and try the beloe code....
SELECT aufnr posnr roms1 roanz
INTO table itab
FROM resb
WHERE kdauf = p_vbeln
AND ablad = itab-sposnr+2.
yes, you can also use secondary index for improving the performance in this case.
Regards,
Anand .
Reward if it is useful.... -
Slow Speed While fetching data from SQL 2008 using DoQuery.
Hello,
I am working for an AddOn and tried to use DoQuery for fetching data from SQL 2008 in C#.
There are around 148 records which full fill this query condition but it takes much time to fetch the data.
I wanna know that is there any problem in this code by which my application is getting slower.
I used break Points and checked it, I founds that while connecting to the server it is taking time.
Code:
// Get an initialized SBObob object
oSBObob = (SAPbobsCOM.SBObob)oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoBridge);
//// Get an initialized Recordset object
oRecordset = (SAPbobsCOM.Recordset)oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset);
string sqlstring = "select DocEntry,ItemCode From OWOR where OWOR.Status='R' and DocEntry not in ( Select distinct(BaseRef) from IGE1 where IGE1.BaseRef = OWOR.DocEntry)";
oRecordset.DoQuery(sqlstring);
var ProductList = new BindingList<KeyValuePair<string, string>>();
ProductList.Add(new KeyValuePair<string, string>("", "---Please Select---"));
while (!(oRecordset.EoF))
ProductList.Add(new KeyValuePair<string, string>(oRecordset.Fields.Item(0).Value.ToString(), oRecordset.Fields.Item(0).Value.ToString() + " ( " + oRecordset.Fields.Item(1).Value.ToString() + " ) "));
oRecordset.MoveNext();
cmbProductionOrder.ValueMember = "Key";
cmbProductionOrder.DisplayMember = "Value";
Thanks and Regards,
Ravi SharmaHi Ravi,
your code and query look correct. But can you ellaborate a little bit.
It seems to be a DI API program ( no UI API ) ?
When you say "I founds that while connecting to the server it is taking time." do you mean the recordset query or the DI API connection to SBO ? The later would be "normal" since the connection can take up to 30 seconds.
To get data it is usually better to use direct SQL connections.
regards,
Maik -
Eliminate duplicate while fetching data from source
Hi All,
CUSTOMER TRANSACTION
CUST_LOC CUT_ID TRANSACTION_DATE TRANSACTION_TYPE
100 12345 01-jan-2009 CREDIT
100 23456 15-jan-2000 CREDIT
100 12345 01-jan-2010 DEBIT
100 12345 01-jan-2000 DEBITNow as per my requirement, i need to fetch data from CISTOMER_TRANSACTION table for those customer which has transaction in last 10 years. In my above data, customer 12345 has transaction in last 10 years, whereas for customer 23456, does not have transaction in last 10 years so will eliminate it.
Now, CUSTOMER_TRANSACTION table has approximately 100 million records. So, we are fectching data in batches. Batching is divided into months. Total 120 months. Below is my query.
select *
FROM CUSTOMER_TRANSACTION CT left outer join
(select distinct CUST_LOC, CUT_ID FROM CUSTOMER_TRANSACTION WHERE TRANSACTION_DATE >= ADD_MONTHS(SYSDATE, -120) and TRANSACTION_DATE < ADD_MONTHS(SYSDATE, -119) CUST
on CT.CUST_LOC = CUST.CUST_LOC and CT.CUT_ID = CUST.CUT_IDThru shell script, months number will change. -120:-119, -119:-118 ....., -1:-0.
Now the problem is duplication of records.
while fetching data for jan-2009, it will get cust_id 12345 and will fetch all 3 records and load it into target.
while fetching data for jan-2010, it will get cust_id 12345 and will fetch all 3 records and load in into target.
So instead of having only 3 records, for customer 12345 it will be having 6 records. Can someone help me on how can i eliminate duplicate records from getting in.
As of now i have 2 ways in mind.
1. Fetch all records at once. Which is impossible as it will give space issue.
2. After each batch, run a procedure which will delete duplicate records based on cust_loc, cut_id and transaction_date. But again it will have performance problem.
I want to eliminate it while fetching data from source.
Edited by: ace_friends22 on Apr 6, 2011 10:16 AMYou can do it this way....
SELECT DISTINCT cust_doc,
cut_id
FROM customer_transaction
WHERE transaction_date >= ADD_MONTHS(SYSDATE, -120)
AND transaction_date < ADD_MONTHS(SYSDATE, -119)However please note that - if want to get the transaction in a month like what you said earlier jan-2009 and jan-2010 and so on... you might need to use TRUNC...
Your date comparison could be like this... In this example I am checking if the transaction date is in the month of jan-2009
AND transaction_date BETWEEN ADD_MONTHS(TRUNC(SYSDATE,'MONTH'), -27) AND LAST_DAY(ADD_MONTHS(TRUNC(SYSDATE,'MONTH'), -27)) Your modified SQL...
SELECT *
FROM customer_transaction
WHERE transaction_date BETWEEN ADD_MONTHS(TRUNC(SYSDATE,'MONTH'), -27) AND LAST_DAY(ADD_MONTHS(TRUNC(SYSDATE,'MONTH'), -27))Testing..
--Sample Data
CREATE TABLE customer_transaction (
cust_loc number,
cut_id number,
transaction_date date,
transaction_type varchar2(20)
INSERT INTO customer_transaction VALUES (100,12345,TO_DATE('01-JAN-2009','dd-MON-yyyy'),'CREDIT');
INSERT INTO customer_transaction VALUES (100,23456,TO_DATE('15-JAN-2000','dd-MON-yyyy'),'CREDIT');
INSERT INTO customer_transaction VALUES (100,12345,TO_DATE('01-JAN-2010','dd-MON-yyyy'),'DEBIT');
INSERT INTO customer_transaction VALUES (100,12345,TO_DATE('01-JAN-2000','dd-MON-yyyy'),'DEBIT');
--To have three records in the month of jan-2009
UPDATE customer_transaction
SET transaction_date = TO_DATE('02-JAN-2009','dd-MON-yyyy')
WHERE cut_id = 12345
AND transaction_date = TO_DATE('01-JAN-2010','dd-MON-yyyy');
UPDATE customer_transaction
SET transaction_date = TO_DATE('03-JAN-2009','dd-MON-yyyy')
WHERE cut_id = 12345
AND transaction_date = TO_DATE('01-JAN-2000','dd-MON-yyyy');
commit;
--End of sample data
SELECT *
FROM customer_transaction
WHERE transaction_date BETWEEN ADD_MONTHS(TRUNC(SYSDATE,'MONTH'), -27) AND LAST_DAY(ADD_MONTHS(TRUNC(SYSDATE,'MONTH'), -27));Results....
CUST_LOC CUT_ID TRANSACTI TRANSACTION_TYPE
100 12345 01-JAN-09 CREDIT
100 12345 02-JAN-09 DEBIT
100 12345 03-JAN-09 DEBITAs you can see, there are only 3 records for 12345
Regards,
Rakesh
Edited by: Rakesh on Apr 6, 2011 11:48 AM
Maybe you are looking for
-
Why Apple does not offer support for linux?
We all know the history of Apple. It clearly shows a trend to be open source, excepting for the licenses they share with Microsoft. In my personal case, I love open source because it has solved several of my problems. Just to share this with everyone
-
Download reports showing the message-"image cannot display"
Hi All, I have designed several reports by using pivot tables and charts (line chart,bar chart,line-bar combo chart etc) and when I am trying to download the required reports into excel or powerpoint or html it downloaded but instead of charts ( only
-
Scripting Error but script still works
I've got a form that has two fields in which I've used concatenation to put two names together ("John Doe and Jane Doe"). These names are imported as xdp named '_UnparsedName' under a repeated container 'sfBorrower'. Based on my understanding of how
-
How to display the data from database(MS access) to a textbox
anyone know ?
-
Can´t recover all my mails from Time Machine
Hi! When I upgraded to Yosemite I did a backup with Time Machine before. After the upgrade I had some issues with my mail accounts. I already figured it out but trying different things I erased a pop account. When I added again, I lost most of my m