To modify field value in a transparent table
how would i modify the value of a field in a transparent table? my data is from internal table. while im looping in the internal table the data goes to the first record of the table not on the right record.
what wrong with my code?
loop at i_tble.
wa_tble = i_tble.
select single angnr
into i_angnr
from ekko
where ebeln eq wa_tble-ebeln.
ekko-angnr = wa_tble-angnr.
modify ekko.
endloop.
Hi,
I am sorry but I didn't understand the purpose of this code. You are reading in a field value of ANGNR from EKKO and you want to update the same record again with the same value? Why?
<b>Secondly, you should never update any SAP table directly like that</b>.
Now for the reason why your update is updating the first record always.
Your 'modify ekko' should be modified as
MODIFY ekko TRANSPORTING angnr WHERE ebeln = wa_tble-ebeln.
Please reward and close the post if answered.
Regards,
Srinivas
Similar Messages
-
How to update field values in a database table using module pool prg?
hi
how to update field values in a database table using module pool prg?
we created a customized table, and we put 2 push buttons in screen painter update and display.
but update is not working?
data is enter into screen fields and to internal table, but it is not updated in database table.
thanks in adv
vidyaHI,
we already used the update statement. but its not working.
plz check this.
*& Module Pool ZCUST_CALL_REC
PROGRAM ZCUST_CALL_REC.
TABLES: ZCUST_CALL_REC,ZREMARKS.
data: v_kun_low like ZCUST_CALL_REC-kunnr ,
v_kun_high like ZCUST_CALL_REC-kunnr,
v_bud_low like ZCUST_CALL_REC-budat,
v_bud_high like ZCUST_CALL_REC-budat.
ranges r_kunnr for ZCUST_CALL_REC-kunnr .
ranges r_budat for zcust_call_rec-budat.
DATA: ITAB TYPE STANDARD TABLE OF ZCUST_CALL_REC WITH HEADER LINE,
JTAB TYPE STANDARD TABLE OF ZREMARKS WITH HEADER LINE.
*data:begin of itab occurs 0,
MANDT LIKE ZCUST_CALL_REC-MANDT,
kunnr like ZCUST_CALL_REC-kunnr,
budat like ZCUST_CALL_REC-budat,
code like ZCUST_CALL_REC-code,
remarks like ZCUST_CALL_REC-remarks,
end of itab.
*data:begin of Jtab occurs 0,
MANDT LIKE ZCUST_CALL_REC-MANDT,
kunnr like ZCUST_CALL_REC-kunnr,
budat like ZCUST_CALL_REC-budat,
code like ZCUST_CALL_REC-code,
remarks like ZCUST_CALL_REC-remarks,
end of Jtab.
CONTROLS:vcontrol TYPE TABLEVIEW USING SCREEN '9001'.
CONTROLS:vcontrol1 TYPE TABLEVIEW USING SCREEN '9002'.
*start-of-selection.
*& Module USER_COMMAND_9000 INPUT
text
MODULE USER_COMMAND_9000 INPUT.
CASE sy-ucomm.
WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
SET SCREEN 0.
LEAVE SCREEN.
CLEAR sy-ucomm.
WHEN 'ENQUIRY'.
perform multiple_selection.
perform append_CUSTOMER_code.
PERFORM SELECT_DATA.
call screen '9001'.
WHEN 'UPDATE'.
perform append_CUSTOMER_code.
PERFORM SELECT_DATA.
call screen '9002'.
perform update on commit.
WHEN 'DELETE'.
perform append_CUSTOMER_code.
PERFORM SELECT_DATA.
call screen '9002'.
ENDCASE.
ENDMODULE. " USER_COMMAND_9000 INPUT
*& Module STATUS_9000 OUTPUT
text
MODULE STATUS_9000 OUTPUT.
SET PF-STATUS 'ZCUSTOMER'.
SET TITLEBAR 'xxx'.
ENDMODULE. " STATUS_9000 OUTPUT
*& Module USER_COMMAND_9001 INPUT
text
MODULE USER_COMMAND_9001 INPUT.
CASE sy-ucomm.
WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
SET SCREEN 0.
LEAVE SCREEN.
CLEAR sy-ucomm.
endcase.
ENDMODULE. " USER_COMMAND_9001 INPUT
*& Module STATUS_9001 OUTPUT
text
MODULE STATUS_9001 OUTPUT.
SET PF-STATUS 'ZCUSTOMER'.
SET TITLEBAR 'xxx'.
move itab-MANDT to zcust_call_rec-MANDT.
move itab-kunnr to zcust_call_rec-kunnr.
move itab-budat to zcust_call_rec-budat.
move itab-code to zcust_call_rec-code.
move itab-remarks to zcust_call_rec-remarks.
vcontrol-lines = sy-dbcnt.
ENDMODULE. " STATUS_9001 OUTPUT
*& Module USER_COMMAND_9002 INPUT
text
module USER_COMMAND_9002 input.
CASE sy-ucomm.
WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
SET SCREEN 0.
LEAVE SCREEN.
CLEAR sy-ucomm.
WHEN 'UPDATE'.
perform move_data.
UPDATE ZCUST_CALL_REC FROM TABLE ITAB.
IF SY-SUBRC = 0.
MESSAGE I000(0) WITH 'RECORDS ARE UPDATED'.
ELSE.
MESSAGE E001(0) WITH 'RECORDS ARE NOT UPDATED'.
ENDIF.
WHEN 'DELETE'.
perform move_data.
DELETE ZCUST_CALL_REC FROM TABLE ITAB.
IF SY-SUBRC = 0.
MESSAGE I000(0) WITH 'RECORDS ARE DELETED'.
ELSE.
MESSAGE E001(0) WITH 'RECORDS ARE NOT DELETED'.
ENDIF.
endcase.
endmodule. " USER_COMMAND_9002 INPUT
*& Module STATUS_9002 OUTPUT
text
module STATUS_9002 output.
SET PF-STATUS 'ZCUSTOMER1'.
SET TITLEBAR 'xxx'.
endmodule. " STATUS_9002 OUTPUT
*& Module update_table OUTPUT
text
module update_table output.
move itab-MANDT to zcust_call_rec-MANDT.
move itab-kunnr to zcust_call_rec-kunnr.
move itab-budat to zcust_call_rec-budat.
move itab-code to zcust_call_rec-code.
move itab-remarks to zcust_call_rec-remarks.
vcontrol-lines = sy-dbcnt.
endmodule. " update_table OUTPUT
***Selection Data
FORM SELECT_DATA.
SELECT mandt kunnr budat code remarks FROM zcust_call_rec INTO
table itab
WHERE kunnr IN r_kunnr AND BUDAT IN R_BUDAT.
ENDFORM.
****append vendor code
FORM APPEND_CUSTOMER_CODE.
clear r_kunnr.
clear itab.
clear r_budat.
refresh r_kunnr.
refresh itab.
refresh r_kunnr.
IF r_kunnr IS INITIAL
AND NOT v_kun_low IS INITIAL
AND NOT v_kun_high IS INITIAL.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = v_kun_low
IMPORTING
OUTPUT = r_kunnr-low.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = v_kun_high
IMPORTING
OUTPUT = r_kunnr-high.
r_kunnr-option = 'BT'.
r_kunnr-sign = 'I'.
append r_kunnr.
PERFORM V_BUDAT.
ELSEIF r_kunnr IS INITIAL
AND NOT v_kun_low IS INITIAL
AND v_kun_high IS INITIAL.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = v_kun_low
IMPORTING
OUTPUT = r_kunnr-low.
r_kunnr-SIGN = 'I'.
r_kunnr-OPTION = 'EQ'.
APPEND r_kunnr.
PERFORM V_BUDAT.
ELSEIF r_kunnr IS INITIAL
AND v_kun_low IS INITIAL
AND NOT v_kun_high IS INITIAL.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = v_kun_low
IMPORTING
OUTPUT = r_kunnr-low.
r_kunnr-SIGN = 'I'.
r_kunnr-OPTION = 'EQ'.
APPEND r_kunnr.
PERFORM V_BUDAT.
ELSEIF r_kunnr IS INITIAL
AND v_kun_low IS INITIAL
AND v_kun_high IS INITIAL.
IF SY-SUBRC = 0.
MESSAGE I003(0) WITH 'ENTER CUSTOMER NUMBER'.
CALL SCREEN '9000'.
ENDIF.
PERFORM V_BUDAT.
ENDIF.
ENDFORM.
FORM V_BUDAT.
IF R_BUDAT IS INITIAL
AND NOT v_BUD_low IS INITIAL
AND NOT v_BUD_high IS INITIAL.
r_budat-low = v_bud_low.
r_budat-high = v_bud_high.
r_budat-option = 'BT'.
r_budat-sign = 'I'.
append r_budat.
ELSEIF R_BUDAT IS INITIAL
AND NOT v_BUD_low IS INITIAL
AND v_BUD_high IS INITIAL.
r_budat-low = v_bud_low.
r_budat-high = v_bud_high.
r_budat-option = 'EQ'.
r_budat-sign = 'I'.
append r_budat.
ELSEIF R_BUDAT IS INITIAL
AND v_BUD_low IS INITIAL
AND NOT v_BUD_high IS INITIAL.
r_budat-HIGH = v_bud_HIGH.
r_budat-option = 'EQ'.
r_budat-sign = 'I'.
append r_budat.
ELSEIF R_BUDAT IS INITIAL
AND v_BUD_low IS INITIAL
AND v_BUD_high IS INITIAL.
IF SY-SUBRC = 0.
MESSAGE I002(0) WITH 'ENTER POSTING DATE'.
CALL SCREEN '9000'.
r_budat-low = ''.
r_budat-option = ''.
r_budat-sign = ''.
ENDIF.
ENDIF.
ENDFORM.
*& Form update
text
--> p1 text
<-- p2 text
form update .
commit work.
endform. " update
*& Form move_data
text
--> p1 text
<-- p2 text
form move_data .
clear itab.
refresh itab.
move-corresponding zcust_call_rec to itab.
MOVE ZCUST_CALL_REC-MANDT TO ITAB-MANDT.
MOVE ZCUST_CALL_REC-KUNNR TO ITAB-KUNNR.
MOVE ZCUST_CALL_REC-BUDAT TO ITAB-BUDAT.
MOVE ZCUST_CALL_REC-CODE TO ITAB-CODE.
MOVE ZCUST_CALL_REC-REMARKS TO ITAB-REMARKS.
APPEND ITAB.
delete itab where kunnr is initial.
endform. " move_data
thanks in adv
vidya -
How to add field value to the standard table
Hi,
How to add field value to the standard table?
for example:
when we go to TCODE SE16-> VBAK table -> on the selection screen if we press F4 against VBTYP we get all the available values for that field. How to add a new document Category value to this field so that it shows up in F4 help for that field.Hi Asif,
I don't think it is possible and feasible for adding new field value to the field VBTYP because it is not possible through SPRO.
If u see the domain of this field VBTYP we have fixed values provided by SAP. There is no value table for this. If u have value table then it will be updated through SPRO. But still if u really want to add some value u can do that by getting access key and add the value in the fixed values of the domain. But of no use other than simply displaying in F4. Because for what ever value u created here there will be no documents in VBAK or any table using this domain.
Hope this is clear for u.
Thanks,
Vinod. -
How to modify field symbol of type Index Table with other field symbol of type any.
Hello Experts,
How is it possible to update an filed symbol table of type Index table with other filed symbol table.
e.g.
Field symbol : <lt_table1> type Index table.
Field symbol : <lt_table2> type Index table.
after some code...at run time these table filled like following.
<lt_tabel1 > has value fore column like c11 , c12 , c13
<lt_table2> has value for column like C11 , C12 , C13 , C14 , C15 . some extra values from <lt_table1>
Now I want to be modify <table1> one entires like C12 with <table2 > col C12.
how I can achieve this.
Regards,
Chetan.Hi,
did you try ASSIGN COMPONENT xx OF STRUCTURE <IT_TABEL1> TO <IT_TABLE2>.
xx will contain the number of the column
or maybe, if you have the description with a field catalog or other, that will be easier ..
regards
Fred -
Retrieving lookup field values from a main table using MDM JAVA APIs
Hi all,
am trying to retrieve the main table data...., i could able to retrieve all the data except lookup field values..., iam facing some runtime exceptions and i dont know why exactly it is throwing this exception..., i pasted piece of code where exactly the error is and the exception also.
in the below sode i set some result set definitions and passing them to retrieveLimitedRecordsCommand. it is showing some exception at retrieveLimitedRecordsCommand.execute(); command.
//*** Code ***//
supportingMainResultDefinitions = new ResultDefinition[] { rdQual ,rdFlat, rdqFlat };
retrieveLimitedRecordsCommand.setResultDefinition(rd);
retrieveLimitedRecordsCommand.setSearch(new Search(tableId));
retrieveLimitedRecordsCommand.setSession(sessionId);
retrieveLimitedRecordsCommand.setSupportingResultDefinitions(supportingMainResultDefinitions);
try {
retrieveLimitedRecordsCommand.execute();
PrintRecords.toConsole(retrieveLimitedRecordsCommand.getRecords());
} catch (CommandException e) {
e.printStackTrace();
//*** Below is the Exception raised ***//
java.lang.UnsupportedOperationException: Unexpected field type -1
at com.sap.mdm.internal.schema.PropertiesHelper.createField(PropertiesHelper.java:274)
at com.sap.mdm.internal.schema.PropertiesHelper.convertFrom(PropertiesHelper.java:281)
at com.sap.mdm.internal.data.RecordMetadata.<init>(Unknown Source)
at com.sap.mdm.internal.data.RecordsLoader.<init>(Unknown Source)
at com.sap.mdm.internal.data.RecordsLoader.<init>(Unknown Source)
at com.sap.mdm.internal.data.RecordResultSetHelper.convertFrom(Unknown Source)
at com.sap.mdm.data.commands.RetrieveLimitedRecordsCommand.execute(Unknown Source)
at com.sap.mdm.apitutorial.lesson2.RecordsDisplay.getDisplayRecords(RecordsDisplay.java:303)
at org.apache.jsp.Sample_jsp._jspService(Sample_jsp.java:190)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:325)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:738)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:534)
If anyonw worked on this concept..., please provide me the solution
Regards
Praveen kWhich version are you using? Can you please try and narrow down to the offending field? You can do this by limiting the fields you provide to ResultDefinition.
-
Hi All,
I have written BDC, in which when i pass value for second screen "Description type field" it's passing '*************************' instead of internal table value.
It's picking correct value for first internal table value. Could anyone please give an idea why it's happening?
Please find the code:
LOOP AT it_record.
header data for BDC
AT NEW CLASS.
IF sy-tabix <> 1.
perform bdc_dynpro using 'SAPLCLMO' '7777'.
perform bdc_field using 'BDC_OKCODE'
'=SAVE'.
CALL TRANSACTION 'CLWM' USING bdcdata
MODE p_mode
UPDATE 'S'
MESSAGES INTO messtab.
clear : bdcdata[],bdcdata.
ENDIF.
perform bdc_dynpro using 'SAPLCLMO' '0200'.
perform bdc_field using 'BDC_CURSOR'
'RMCLM-CLASS'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RMCLM-CLASS'
it_record-class.
perform bdc_dynpro using 'SAPLCLMO' '7777'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'RMCLM-KLBEZ'.
perform bdc_field using 'RMCLM-KLBEZ'
it_record-klbez.
perform bdc_field using 'RMCLM-STATU'
'1'.
perform bdc_dynpro using 'SAPLCLMO' '7777'.
perform bdc_field using 'BDC_OKCODE'
'=MERK'.
perform bdc_field using 'BDC_CURSOR'
'RMCLM-KLBEZ'.
perform bdc_field using 'RMCLM-KLBEZ'
it_record-klbez.
perform bdc_field using 'RMCLM-STATU'
'1'.
MOVE 1 TO IDX.
ENDAT.
line item data for BDC
perform bdc_dynpro using 'SAPLCLMO' '7777'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_CURSOR'
'RMCLM-RELEV(02)'.
CONCATENATE 'RMCLM-MERKMA(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
it_record-merkma.
CONCATENATE 'RMCLM-RELEV(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
it_record-relev.
IDX = IDX + 1.
ENDLOOP.
Thanks,
UjjwalHi Ujjwal
The reason behind this is that you are using AT NEW.... ENDAT block in your coding.
When you use AT NEW field statements, the fields in the work area after the field get converted into ********.
Check values in your work area I_RECORD in debugging inside AT NEW statement and you will understand what I am saying.
In your case all the fields from header line of I_RECORDS which come after field CLASS are getting converted into *******,
hence the error.
Try using a temporary work area, say w_record. Pass value of I_record to w_record before AT NEW statement.
And use w_record-fields instead of I_record-fields. And your program should work. -
How to retrieve a column field value from an ADF table ?
All,
I have a backing bean where I have bounded a field of an ADF table.
I would like, in the bean, to read the value of that field so that I can use it inside a task flow router.
The question: how to read a value from a ADF table column field ?
In the bean I have the getter and setter of the RichInputText ADF table field. But when I type:
System.out.println("the name is: " + this.getName().getValue());
or
System.out.println("the name is: " + this.Name().getValue());
I get a null pointer exception.
Thanks in advance,
Sergio.Thanks Marvin, but this is not really what I'm looking for. Or at least, it does not sounds like to be :)
I need to get the value contained in a row cell of an ADF table.
Let's say the table (two rows, three cells) contains these values:
"table_A", "123", "John"
"table_B", "456", "Peter"
When I click on the first row, I need the value: "table_A". Once I got that value, I extract the last char, in this case: "A", and then I call a specific task flow from a task flow router (specified in the task flow router Cases property).
When I click on the second row, the same process applies, only the router now points to another flow view.
So to summarize, I need to get the value of a row cell in an ADF table. How to do that from within a javaBean in JDeveloper 11g Release 2 ?
This is what I have in the bean; so far I've bounded the related row cell (herkunft) to the bean. Each time I select a row on the ADF table, the function setHerkunft() runs - I see that from within the JDeveloper console - but when I try to get its value, I get a null value - hence the surrounding if statement.
package bean;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.event.ValueChangeEvent;
import oracle.adf.view.rich.component.rich.input.RichInputText;
+public class taskFlowBean {+
public RichInputText herkunft;
public static String taskFlowView = "C";
+public taskFlowBean() {+
System.out.println("taskFlowBean constructor call");
+}+
+public void setHerkunft(RichInputText herkunft) {+
System.out.println("set herkunft");
this.herkunft = herkunft;
if (this.getHerkunft().getValue() != null )
System.out.println("herkunft is: " + this.getHerkunft().getValue());
+//here taskFlowView will set accordingly with the herkunft value.+
+}+
+public RichInputText getHerkunft() {+
System.out.println("get herkunft");
return herkunft;
+}+
+public String getTaskFlowView() {+
System.out.println("get taskFlowView ! : " this.taskFlowView);+
return this.taskFlowView;
+}+
+}+
Regards,
Sergio. -
How to check a field value within an Internal table
Hi Friends,
My requirement is:
I have a line item of PO records, in that each line item of Plant field should not diffe with other line items. If it differs or say the records have different plant values line items, then I have to throw an error message.
Below example for better understanding.
lineitem Plant
010 ABC
020 ABC
030 XYZ
040 LKG
So, my report will throw an error like "All line items must be identical'.
How to do proceed it.Please advise.
Thanks & Regards
Sankar.Hi Sankar
first you need to fetch all the values in one internal table from your PO.
After that create an internal table with only plant field and move all the plan values in this table.
let assume ITAB is a table with all the values. and ITAB1 with plant only.
wa_itab is the work area for ITAB and wa_itab1 is WA for ITAB1.
ITAB has all the values and ITAB1 has all the values only for plant.
delete adjacent duplicate from itab1 compairing plant.
loop at itab1 into wa_itab1. " this will fetch all the plant values in workarea.
read table itab into wa_itab where wa_itab-plant = wa_itab1-plant. " this will fetch only the values matching to the table itab1
if su-subrc <> 0.
message 'plants are not similar' TYPE 'E'.
elseif sy-subrc = 0.
write your code*.
endif.
endloop.
hope this will help you.
Thanks
Lalit Gupta -
How To Read Field Values Form Dynamic Internal Table
Hi,
I Created a dynamic internal table using.
FIELD-SYMBOLS: <gt_table> TYPE STANDARD TABLE,
<wa_gt_table>,
<l_fvalue> TYPE ANY.
This Interanl table is working well, and all values are populated to an ALV.
Now I try to set a link
for that I am using below code
READ TABLE <gt_table> ASSIGNING <l_fvalue> index rs_selfield-tabindex.
IF sy-subrc EQ 0.
insplot = <l_fvalue>-prueflos.
Now it is showing a syntax error :
the data object <l_fvalue> has no structure and there for no component called prueflos
Regards
NausalHi,
Refere following code
Local Field Symbol
FIELD-SYMBOLS: <lf_any> TYPE ANY. "Changed data
LOOP AT <gf_dyna_table> ASSIGNING <gf_dyna>.
DO.
ASSIGN COMPONENT sy-index OF STRUCTURE <gf_dyna> TO <lf_any>.
IF sy-subrc NE 0.
EXIT.
ENDIF.
IF ls_attach-line IS INITIAL.
ls_attach-line = <lf_any>.
ELSE.
CONCATENATE ls_attach-line <lf_any> INTO ls_attach-line
SEPARATED BY lc_tab.
ENDIF.
ENDDO.
CONCATENATE lc_cret ls_attach-line INTO ls_attach-line.
Append Changed Data to attachement table
APPEND ls_attach TO gt_attach.
Clear
CLEAR : ls_attach.
ENDLOOP.
Regards,
Prashant -
Modifying field lenght for an external table via OWB
Hi folks,
After, I would like to thanks everyone that helps to improve the level of quality of this forum with questions and answers!
I am having a problem with flat files and external tables:
I can't specify the field length in the ORACLE_LOADER parameters via OWB, so the driver consider that all my fields are CHAR(255). Concerning the online documentation for Oracle Utilities Part. no. A96652-01 on page 12-21, it's write that the lack of specification about the datatype or length of a field, the driver will assume the fields name and order of the fields defined on the external table fields and they will be CHAR(255). My problem is that we need to use a field bigger than CHAR(255), so I made this external table for example about our problem:
CREATE TABLE "TESTE"
"NOME" VARCHAR2(300),
"SOBRENOME" VARCHAR2(300))
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY TARGET_LOC_SRC_FILES_LOC
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
STRING SIZES ARE IN BYTES
NOBADFILE
NODISCARDFILE
NOLOGFILE
FIELDS
TERMINATED BY ';'
NOTRIM
"NOME" ,
"SOBRENOME"
) LOCATION (
TARGET_LOC_SRC_FILES_LOC:'Partners.txt'
REJECT LIMIT UNLIMITED
NOPARALLEL
When we put by hand the field length in this script, it works fine!
Is there a way to put the length of the fields in the FIELDS clause of the SQL*Loader control file using OWB?Carlos,
Have you tried the following:
- Update the data types in the sampled flat file (i.e. go into the field definitions and edit the length).
- Go into the mapping and inbound reconcile the table (right-mouse click the file operator and select inbound reconcile).
- Regenerate, and review the result.
Thanks,
Mark. -
How to group together same field values in a internal table.
Hi Gurus,
Case:1
Using AUFNR, i am retrieving data from RESB table.
Fields (RSPOS, ALPGR, ALPRF,KZAUS, MATNR).
If RESB-ALPGR (Alternate material group) is not initial, sort those values with ALPFR (Priority) after that group together same ALPGR values.
1) Top most priority (ALPRF) value MATNR populate to IDOC field.
2). Next top priority (ALPRF) value MATNR populate to IDOC field.
Case2:
using AUFNR, check RESB-KZAUS if it has a value '1'.
then, check to see if there are RESB-RSPOS that has the same (repeated RSPOS values) Ex: RSPOS value 0002,0002.
if yes, place the first RSPOS with KZAUS = 1. MATNR move to IDOC next RSPOS-MATNR value move to IDOC field.
Points will be awarded for useful answers.
Thanks in Advance.
Sashi.Hi,
Check this Example..
DATA:BEGIN OF ITAB OCCURS 0,
NAME(15) TYPE C,
END OF ITAB.
ITAB-NAME = 'peter'.
APPEND ITAB.
CLEAR ITAB.
ITAB-NAME = 'john'.
APPEND ITAB.
CLEAR ITAB.
ITAB-NAME = 'abrahm'.
APPEND ITAB.
CLEAR ITAB.
ITAB-NAME = 'daneyal'.
APPEND ITAB.
CLEAR ITAB.
LOOP AT ITAB.
WRITE:/ ITAB-NAME.
ENDLOOP.
Reward Points if found helpfull..
Cheers,
Chandra Sekhar. -
Change a field value in the database table
Hi,
GB01 is the database table.
GB01-BOOLCLASS = 009
GB01-CLASSTYPE = S
GB01-BCLTAB = BSEG.
GB01-BCLFIELD = GSBER.
Upon input of above details, will get table Record as
BOOLCLASS 9
CLASSTYPE S
BCLTAB BSEG
BCLFIELD GSBER
BEXCLUDE X
In the record, the field GB01-BEXCLUDE has the value X in it. It should be replaced by value =.
Changes should be made ONLY for this record. Other Records should not be touched.
How can we do this. Help me in doing this.
Thanks,
Ramya.Hi Ramya,
Follow these steps :
1. Goto the table GB01 -> Display its contents.
2. Double click the record which you want to edit.
3. Type /h (where you type transaction code) to go to debugging mode for that record.(Press enter twice to goto debugging mode)
4. Click on Field CODE and give it value EDIT and then click on the PENCIL icon besides it.
5. Now click on SAVE.
6. Switch off the Debugging mode now.
7. Now you can see your selected record in EDITABLE mode.
8. Do the EDIT part and SAVE.
Reward with points if helpful.
Regards
Hemant Khemani -
After Execute Query I cannot modify fields values.
I enter in "enter-query", put some values and I enter in "execute-query", my forms return filled with database values, but I cannot modify the fields and update records, when I try to modify, exception raises: FRM-40200.
What Can I do to solve this?
Thanks for patience.Check in your form if the property is changed at runtime.
Check for set_item_property(<item_name>,INSERT_ALLOWED,property_false);
Check for set_item_property(<item_name>,UPDATE_ALLOWED,property_false);
or
Check for set_block_property(<block_name>,INSERT_ALLOWED,property_false);
Check for set_block_property<block_name>,UPDATE_ALLOWED,property_false);
Cheers
AT -
LOV field value search in query table region
Hi All,
I have a custom OAF page with LOV fields, i need to do a search and need to display the value in query table region,please suggest.
ThanksHi,
Check this article, explains how to use a queryregion for search
http://imdjkoch.wordpress.com/tag/query-regions/
-Idris -
Updating EBAN TAble with custom field values by BAPI_PR_CREATE
Hi all,
My requirement is PR creation by BAPI_PR_CREATE Function Module .
for pr item level customer added 10 fields in the EBAN table append structure CI_EBANDB. .
i am creating PR by using Funcation module BAPI_PR_CREATE.
In this Function Module I have to pass the structure name and field values in the EXTENTIONIN .
what is the structure name I have to pass and how populate data in to the EBAN table.
after that i have to create PR and updating 10 two custom field values in the EBAN Table.
how to proceed for updating the customer field values in the eban table.
thanks in advance.
sriHi Sri,
better you dont use it. try this..
example code:
data: i_banc type bapiebanc occurs 0 with header line.
data: i_bkn type bapiebkn occurs 0 with header line.
data: i_ret type bapireturn occurs 0 with header line.
data: i_band type bapieband occurs 0 with header line.
data: i_bantx type bapiebantx occurs 0 with header line.
data number type bapiebanc-preq_no.
i_banc-acctasscat = par_asset.
i_banc-short_text = 'VehicleBooking'.
i_banc-quantity = '1'.
i_banc-DEL_DATCAT = '1'.
i_banc-deliv_date = par_date .
i_banc-mat_grp = 'TRAVEL'.
i_banc-unit = 'ST'.
i_banc-c_amt_bapi = 100.
i_bkn-cost_ctr = par_cost.
i_bkn-g_l_acct = par_gl.
i_bkn-fund = par_fund.
i_bkn-funds_ctr = par_fund_ctr.
append i_banc.
append i_bkn.
call function 'BAPI_REQUISITION_CREATE'
exporting
skip_items_with_error = 'X'
importing
number = number
tables
requisition_items = i_banc
requisition_account_assignment = i_bkn
requisition_item_text = i_bantx
return = i_ret
Describe table i_ret lines count.
If count > 0.
loop at i_ret.
Message e000(zbooking) with i_ret-message
endloop.
Endif.
if not number is initial.
S000(zbookings) with 'Requisition number ' , number ,' created'.
endif.
thanks
trinadh
Maybe you are looking for
-
How to link ECC Company code with BCS Consolidation unit
I have to create new consolidation unit in BCS, parallelly in SAP R/3 also I have created a company code. I could read following in the forum :- The Company Codes from ECC are assigned to the characteristic Company in BCS, thus creating a one to one
-
When using Airplay, the display on my tv isn't being fully used (its not taking up the full widescreen tv display). How do I fix that issue?
-
New create desktop shortcut GPO is causing 1030 and 1058 errors on a Windows 2003 terminal server
Primary DC: Win2012. BDC: Win2008. Clients: Win7, Win8.1. Maintaining an old Win2003 terminal server to run legacy software. Everything works fine for a look time until I added a new GPO to create a desktop shortcut on the client machines, Windows
-
I recently purchased this G4 AGP graphics. The computer arrived with the OS only (no programs) I purchased a new Illustrator 10 program and installed. I then purchased a new Photoshop 7.0 and installed. When installing PS, I registered online and upd
-
After opening iPhoto, the program will not Quit, will not Force Quit. I've done the command-option-escape and any other combination of keys. Last time I tried to turn off the computer with button on back, but no. Ended up pulling out the plug. No