How to insert blank spaces in XML tag?
Hi Experts,
I have a variable of type char and lenght 10 with value "ABCDE". When I write this value in xml tag <TEXT> using simple transformation it ignores the trailing blank spaces and the result xml string looks as <TEXT>ABCDE</TEXT>.
I want the xml tag with trailing blank spaces i.e. it should be like <TEXT>ABCDE </TEXT>. And suppose if the variable does not contain any value, the xml tag should contain 10 blank spaces like <TEXT> </TEXT>.
I have tried using the solution given in this link
http://help.sap.com/saphelp_nwpi71/helpdata/en/44/f52846257a0485e10000000a155369/frameset.htm
but unfortunately it doesn't work.
Please guide me to achieve this.
Regards,
Ravi
ABAP prog:
DATA: text(10) TYPE c VALUE 'ABCDE',
xml_xstring TYPE string.
CALL TRANSFORMATION z_test SOURCE root = text
RESULT XML xml_xstring.
WRITE xml_xstring.
Transformation:
<?sap.transform simple?>
<tt:transform xmlns:tt="http://www.sap.com/transformation-templates">
<tt:root name="ROOT"/>
<tt:template>
<Text tt:value-ref="ROOT"/>
</tt:template>
</tt:transform>
Result in xml string:
<?xml version="1.0" encoding="utf-16"?>#<Text>ABCDE</Text>
Also tried transformation using:
<tt:template>
<Text>
<tt:value length="10" ref="ROOT"/>
</Text>
</tt:template>
Thanks.
Similar Messages
-
How to insert blank spaces at end of a record
Hi All,
i need to write 10 records each of 80 char size. of these 10 records, each record might have different data and the last field will be a filler field which only has space.
for example:
DATA : BEGIN OF gs_mrecord ,
id(1) VALUE'M' ,
accno(12) ,
refid(2) VALUE 'RR' ,
sec_cd(4) VALUE '2437' ,
sub_typ(1) VALUE '6' ,
sub_dt(5) ,
sub_seq_no(1) ,
sec_cd1(4) VALUE '2437' ,
sub_dt1(6) ,
record_no(6) TYPE n ,
ext_ind(1) ,
plat_id(1) ,
filler_1(1) ,
clear_code(3) ,
ex_merc_no(16) ,
filler_4(4) , fill blank spaces
mech_bin_no(6) ,
filler(6) , " fill blank spaces
END OF gs_mrecord .
like this there are 10 types with 80 char size, however the last field is a filler, in which we need to fill only blank spaces.
when i wrtie this data to the application server file i can't see the spaces and when download(to .TXT file) also i can't see the spaces.
is there anyway that i can keep the spaces at the end of the record.
Please note, in the middle of the record, we can keep the spaces as there is some data after that.
Any hint would be of great help.
Cheers,
SR.Hi Srinivas
Just a thought, try as below:
Declare a text variable of length 80 characters. Before transferring the record to Output file, move the work area to the text field and add a New Line character at 80th position. Now tranfer this text field to file with length specification.
Eg:
DATA: l_cr(1) TYPE c VALUE cl_abap_char_utilities=>cr_lf,
l_text(80) TYPE c.
OPEN DATASET ....
IF sy-subrc EQ 0.
LOOP AT <itab> INTO <wa>.
MOVE <wa> TO l_text.
l_text+80 = l_cr.
TRANSFER l_text TO <dsn>.
ENDLOOP.
ENDIF.
Hope that helps, also check the codepage in which you download the file from Application server before Viewing. Maybe checking the file contents via AL11.
Hope it helps.
Regards
Eswar -
How to add extra blank space in xml
I open the xml file in notepad I get this
<XXON_EXT_BANK_ACCOUNT_NAME>創名聯合會計師事務所 </XXON_EXT_BANK_ACCOUNT_NAME>
But when I open the xml file in html format the blank space is gone.
How can I add extra blank space in xml?Hi
Why do you need the extra space for?
This difference in display that you see between your browser and notepad/notepad++
will not affect your generated report.
Bogdan -
How to insert the data from XML to a table
Hi,
I'm using Oracle 10g Express Edition
I need help in How to insert the data from XML file into the table.
Below is the example i'm working on..
I have create ridb user with below mentioned privileges:
Account Status Locked Unlocked
Default Tablespace: USERS
Temporary Tablespace: TEMP
User Privileges :
Roles:
CONNECT
RESOURCE
Direct Grant System Privileges:
CREATE DATABASE LINK
CREATE MATERIALIZED VIEW
CREATE PROCEDURE
CREATE PUBLIC SYNONYM
CREATE ROLE
CREATE SEQUENCE
CREATE SYNONYM
CREATE TABLE
CREATE TRIGGER
CREATE TYPE
CREATE VIEW
& table is created TRIALZIPCODES below mentioned is the DDL:
CREATE TABLE TRIALZIPCODES
STATE_ABBR VARCHAR2(20) NOT NULL
, ZIP_CODE NUMBER(10, 0) NOT NULL
, ZIP_CODE_EXT VARCHAR2(20)
Below is the XML FILE: which is stored in C:\OracleProject Folder
File name: trial.xml
<?xml version="1.0" ?>
<metadata>
- <Zipcodes>
- <mappings Record="4">
<STATE_ABBREVIATION>CA</STATE_ABBREVIATION>
<ZIPCODE>94301</ZIPCODE>
</mappings>
- <mappings Record="5">
<STATE_ABBREVIATION>CO</STATE_ABBREVIATION>
<ZIPCODE>80323</ZIPCODE>
<ZIP_CODE_EXTN>9277</ZIP_CODE_EXTN>
</mappings>
</Zipcodes>
</metadata>
PL/SQL Procedure:which i'm trying to execute from SQLDeveloper
create or replace
PROCEDURE TRIAL AS
BEGIN
DECLARE
-- declare attributes
charString varchar2(80);
finalStr varchar2(4000) := null;
rowsp integer;
v_FileHandle UTL_FILE.FILE_TYPE;
l_context_handle dbms_xmlgen.ctxHandle;
insCtx DBMS_XMLStore.ctxType;
begin
-- DBMS_XMLGEN.setRowTag ( ctx IN ctxHandle, rowTag IN VARCHAR2);
-- DBMS_XMLGEN.setRowSetTag ( ctx IN ctxHandle, rowSetTag IN VARCHAR2);
-- the name of the table as specified in our DTD
DBMS_XMLGEN.SETROWSETTAG(l_context_handle,'zipcodes');
-- the name of the data set as specified in our DTD
DBMS_xmlgen.setRowTag(l_context_handle,'mappings');
-- for getting the output on the screen
dbms_output.enable(1000000);
-- open the XML document in read only mode
v_FileHandle := utl_file.fopen('c:/OracleProject','trial.xml', 'r');
loop
BEGIN
utl_file.get_line(v_FileHandle, charString);
exception
when no_data_found then
utl_file.fclose(v_FileHandle);
exit;
END;
dbms_output.put_line(charString);
if finalStr is not null then
finalStr := finalStr || charString;
else
finalStr := charString;
end if;
end loop;
-- for inserting the XML data into the table
insCtx := DBMS_XMLSTORE.NEWCONTEXT('RIDB.TRIALZIPCODES');
insCtx := DBMS_XMLSTORE.INSERTXML(insCtx, finalStr);
dbms_output.put_line('INSERT DONE '||TO_CHAR(rowsp));
DBMS_XMLStore.closeContext(insCtx);
END;
END TRIAL;
For the first time when i complied i got the errors as :
Procedure RIDB.PROCEDURE1@RIDB
Error(16,14): PLS-00201: identifier 'UTL_FILE' must be declared
Error(16,14): PL/SQL: Item ignored
Error(29,1): PLS-00320: the declaration of the type of this expression is incomplete or malformed
Error(29,1): PL/SQL: Statement ignored
Error(33,1): PL/SQL: Statement ignored
Error(33,19): PLS-00320: the declaration of the type of this expression is incomplete or malformed
Error(36,1): PL/SQL: Statement ignored
Error(36,17): PLS-00320: the declaration of the type of this expression is incomplete or malformed
So i logged in as sys & grant the permission to execute on UTL_FILE to ridb (user):
SQL Statement:
grant execute on utl_file to ridb
So, it got compiled successfully but when i execute it gives me error as:
Source does not have a runnable target.
What does this mean?
So I browse through forum & i got to know that i need to initial the UTL_FILE_DIR ="C:/OracleProject" in init.ora
So can i edit the init.ora with notepad.When i tried to do that it says permission denied
In my system it shows the init.ora file in path C:\oraclexe\app\oracle\product\10.2.0\server\config\scripts
but there is also other file initXETemp in the same path do i need to do the changes in it.
I have tried even editing the SPFILE as mentioned below:
C:\oraclexe\app\oracle\product\10.2.0\server\dbs\SPFILEEXE - I had edit this file using notepad & set the value of UTL_FILE_DIR ="C:/OracleProject". So next time when i restarted i'm unable to log on to the database.
So i had reinstall the software again.
Could you please let me know how to proceed..hi,
I have created the directory from sys database
CREATE or replace DIRECTORY XML_DIR2 AS 'C:\OracleProject';
& grant read,write access to the user
grant read,write on directory XML_DIR2 to RIDB;
& i had change the tag name in the xml file as shown below:
<?xml version = '1.0'?>
<metadata>
<Zipcodes>
<mappings Record="4">
<STABBRE>CA</STABBRE>
<ZIPCODE>94301</ZIPCODE>
</mappings>
<mappings Record="5">
<STABBRE>CO</STABBRE>
<ZIPCODE>80323</ZIPCODE>
<ZIPCODEEXT>9277</ZIPCODEEXT>
</mappings>
</Zipcodes>
</metadata>
TRIALZIPCODE table as shown below:
CREATE TABLE "RIDB"."TRIALZIPCODE"
( "STABBRE" VARCHAR2(20 BYTE),
"ZIPCODE" NUMBER(*,6) NOT NULL ENABLE,
"ZIPCODEEXT" NUMBER
) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "USERS" ;
I have tried two methods as shown below:
Procedure 1:
create or replace
PROCEDURE TRIAL_V2 AS
BEGIN
DECLARE
-- declare attributes
charString varchar2(80);
finalStr varchar2(4000) := null;
rowsp integer;
v_FileHandle UTL_FILE.FILE_TYPE;
l_context_handle dbms_xmlgen.ctxHandle;
insCtx DBMS_XMLStore.ctxType;
cnt NUMBER;
xmldoc xmltype := xmltype( bfilename('XML_DIR2','trialxml.xml'), nls_charset_id('AL32UTF8') );
--XML_DIR VARCHAR2(40) := 'C:\\OracleProject';
BEGIN
insCtx := DBMS_XMLStore.newContext('DEV.TRIALZIPCODES');
DBMS_XMLStore.setUpdateColumn(insCtx, 'STABBRE');
DBMS_XMLStore.setUpdateColumn(insCtx, 'ZIPCODE');
DBMS_XMLStore.setUpdatecolumn(insCtx, 'ZIPCODEEXT');
DBMS_XMLStore.setRowTag(insCtx, 'mappings');
cnt := DBMS_XMLStore.insertXML(insCtx, xmldoc);
DBMS_XMLStore.closeContext(insCtx);
END;
Procedure 1 was compiled with out errors but when i execute i got the error as :
Source does not have a runnable target.
Procedure 2_
CREATE OR REPLACE PROCEDURE TRIAL_V3 AS
BEGIN
DECLARE
-- declare attributes
charString varchar2(80);
finalStr varchar2(4000) := null;
rowsp integer;
v_FileHandle UTL_FILE.FILE_TYPE;
l_context_handle dbms_xmlgen.ctxHandle;
insCtx DBMS_XMLStore.ctxType;
cnt NUMBER;
xmldoc xmltype := xmltype( bfilename('XML_DIR2','trialxml.xml'), nls_charset_id('AL32UTF8') );
--XML_DIR VARCHAR2(40) := 'C:\\OracleProject';
BEGIN
INSERT INTO trialzipcode (STABBRE, ZIPCODE, ZIPCODEEXT)
SELECT extractvalue(x.column_value, 'mappings/STABBRE'),
extractvalue(x.column_value, 'mappings/ZIPCODE'),
extractvalue(x.column_value, 'mappings/ZIPCODEEXT')
FROM TABLE(
XMLSequence(
EXTRACT(
xmltype( bfilename('XML_DIR2','trialxml.xml'), nls_charset_id('AL32UTF8') ),
'metadata/Zipcodes/mappings'
) x
END;
END TRIAL_V3;
Procedure 2 was complied without errors but when i execute i got the error as:
Connecting to the database RIDB.
ORA-22288: file or LOB operation FILEOPEN failed
The system cannot find the file specified.
ORA-06512: at "SYS.DBMS_LOB", line 523
ORA-06512: at "SYS.XMLTYPE", line 287
ORA-06512: at "RIDB.TRIAL_V3", line 12
ORA-06512: at line 2
Process exited.
Disconnecting from the database RIDB.
Could you please let me know how to proceed... -
How to insert more than 32k xml data into oracle clob column
how to insert more than 32k xml data into oracle clob column.
xml data is coming from java front end
if we cannot use clob than what are the different options availableAre you facing any issue with my code?
String lateral size error will come when you try to insert the full xml in string format.
public static boolean writeCLOBData(String tableName, String id, String columnName, String strContents) throws DataAccessException{
boolean isUpdated = true;
Connection connection = null;
try {
connection = ConnectionManager.getConnection ();
//connection.setAutoCommit ( false );
PreparedStatement PREPARE_STATEMENT = null;
String sqlQuery = "UPDATE " + tableName + " SET " + columnName + " = ? WHERE ID =" + id;
PREPARE_STATEMENT = connection.prepareStatement ( sqlQuery );
// converting string to reader stream
Reader reader = new StringReader ( strContents );
PREPARE_STATEMENT.setClob ( 1, reader );
// return false after updating the clob data to DB
isUpdated = PREPARE_STATEMENT.execute ();
PREPARE_STATEMENT.close ();
} catch ( SQLException e ) {
e.printStackTrace ();
finally{
return isUpdated;
Try this JAVA code. -
How to insert a space-bar in the Muse CC master slide page property metadata
I'm using the latest version of Muse CC and need to know how to insert a space-bar in the master slide page property metadata page title suffix area
I found it. If anyone else has this problem press the shift and \ at the same time on a standard windows keyboard.
-
How to apply paragraph styles to xml tag?
Hi All,
How to apply paragraph style to xml tag?Hi Learner,
Try the below js code.
var myDoc = app.activeDocument;
try{
mySel=app.selection[0];
myDoc.xmlElements[0].xmlElements.add({markupTag:"TEST", xmlContent:mySel});
}catch(e){
alert(e);
var myDocument = app.activeDocument;
app.findGrepPreferences.appliedParagraphStyle = "test";
app.findGrepPreferences.findWhat = ".+(?=\\r)"
var mySearch = myDocument.findGrep(false);
for (a=0; a<mySearch.length; a++){
myDocument.xmlElements[0].xmlElements.add({markupTag:"TEST", xmlContent:mySearch[a]});
thx,
csm_phil -
How to use Euro symbol in xml tags?
How to use Euro symbol in xml tags?
What do you mean by "in xml tags"? Can you post a three-line XML snippet showing what you hope to achieve?
-
How to insert blank lines in the ALV output.
Hi Friends,
Could any body help me out How to insert blank lines in the ALV output.?? Any Code pls...
Thank you,
Vikram.Chi vikram
do like this
In the fieldcatalog table all the fields should be in editable mode
ie lw_fcat-edit = 'X'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
i_callback_pf_status_set = 'SET_PF_STATUS'
i_callback_user_command = 'USER_COMMAND'
is_layout = lv_layout
it_fieldcat = lt_fcat[]
i_save = 'A'
is_variant = lv_variant
TABLES
t_outtab = lt_license[]
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. " display_data
*& Form user_command
FORM user_command USING r_ucomm TYPE sy-ucomm
rs_selfield TYPE slis_selfield.
CASE r_ucomm.
WHEN 'ADD'. "
data: lv_ind type i.
data: lv_line type i.
describe table lt_license lines lv_line.
loop at lt_license into lw_license.
lv_ind = sy-tabix.
if lv_ind = lv_line.
append initial line to lt_license.
endif.
endloop.
ENDCASE.
ENDFORM. "user_command
reward points if useful
Rohan -
How to use blank space replace NULL on discoverer viewer
Hi,
There is a report that has a varchar field should show text values, and if NULL, I need it show blank space, and does in disco desktop, but on viewer, the same worksheet shows NULL.
Even I changed in the Tools - Options - Format menu(desktop), it still show NULL on viewer.
why?
please help! thanks!
sammyHi Sammy,
Unfortunately ‘some’ of the settings set in Desktop do not carry over to Viewer. These options need to be defined for Viewer itself.
A temporary way to set the Viewer settings is to click on ‘Options’ when logged in Viewer itself. You’ll have to open a responsibility or report before this option becomes available to select. Within here you’ll be able to change the way NULL values are seen. However this method only makes the change for the User you logged in with.
To make the change for all users, it’s best to edit the PREF.TXT file on the Discoverer Server. Please view the documentation below for more information on how to configure Viewer. For windows platform click here : http://download-uk.oracle.com/docs/html/A90287_01/toc.htm,
For Unix platform click here : http://download-uk.oracle.com/docs/html/A90288_01/toc.htm. Once you’ve run the applypreference script, these settings will be forced down to all users of Discoverer.
Hopefully this will help ;-)
Lance -
How to delete blank space from value of Infoobject in the transfer rule
does anyboady know how to write a routine in the transfer rule in order to delete ending blank spaces from value of Infoobject 'ORDTEXT'. E.g. value: 'ABM '? After routine, the result should be 'ABM'.
Thanks for any input.Deleting 'ending blank spaces' from a character type field (ie info-object or text) in SAP is not meaningful. For all usage, a char type field of length 8 having value 'ABM ' is same as 'ABM'.
Ok, HTML is changing the display in the above, so let me restate it
For all usage, a char type field of length 8 having value 'ABM_____' is same as 'ABM', take the underscore character (_) in the first string as a placeholder for space character.
Edited by: Ajay Das on Jul 29, 2009 12:07 PM -
How can i find and replace xml tags?
Hi, i am using xml in my workflow and want to be able to remove certain tags if they contain particular text.
here is an example of my xml structure…
<entry>
<name>DEFAULT</name>
<tel>DEFAULT</tel>
<address>DEFAULT</address>
</entry>
I am using this initial structure to set the paragraph styles to be followed when the xml data is imported.
This leaves DEFAULT in place wherever an entry doesn't have any content for that field.
I want to be able to import my XML then run a script that removes any tags that include DEFAULT, - I need the entire xml tag to be removed not just the text, if i do a normal find and replace it will only remove the text not the tags which is causing problems with styling. I also want to remove the end of para/return (^p) that i've placed at the end of the line. So it would be the same as opening up story editor and removing the content + tags + hard return in there, but i want to automate the process…
So i think this is what i need to search for in each case
"<name>DEFAULT</name>^p"
and i want to replace it with nothing ""
Can this be done through scripting (ideally javascript)?
I have a little knowledge of javascript but am not sure how to search and target that kind of string in indesign...
using indesign cs5
many thanksHi,
Script should do it in two steps:
1. find all occurences of i.e. ">DEFAULT<"
2. remove whole paragraph which is a found_text's container.
For example this way -JS - (a textFrame filled with your text should be selected) :
var mStory = app.selection[0].parentStory;
app.findTextPreferences = null;
app.findTextPreferences.findWhat = ">DEFAULT<";
var myF = mStory.findText();
var count = myF.length;
while (count--)
myF[count].paragraphs[0].remove();
rgds -
How to generate blank spaces at end of the record in a flat file with fixed
Hi,
I am generating a flat file with fixed length.
In my ABAP program, i am able to see the spaces at the end of the recors in debug but when download to applicaiton server i am not able to see those spaces.
How can i generate blank spaces at the end of the record in a flat file?
Please update
Thank youHow are you downloading the file? And, How are you looking at the file on the application server?
Can you provide snippets of your code?
Cheers
John -
How to Remove Blank spaces in the text elements for a smartform
Hi All,
Can any one please help me out to remove the blank spaces in the text elements.
We are printing Labels using the Zebra Printer and we have rotated the windows to 90 degrees.
We are able to see out text and barcodes. But the issues is when we are printing the label. We are getting spaces in the Text and in the Text elements fields. I have tried to give &g_name(C)&. But it is not working even i worked with style sheet spaces no luck.
Currently out text and fields are printing like this
s h r i y a n
material number
1111 -001 -000
They should print like
shriyan
1111-001-000
According to the ZEBRA suggestions we are using the font helve.
Plase help us it is very urgent.
Reward point will be given.
ThanksHi,
Just use Condense g_name inside the program lines.
Just to see how it behaves put a hard breakpoint.
Break Username. and check the condense statement.
condense <your field> no-gaps.
Create program lines ahead of printing. give the field you want to condense in the input and output parameters of the program lines.
Use condense inside the program lines.
Thanks,
Vamshi. -
[CS3 JS] How to associate text with an XML tag
Hello,
I have a script that allows one to create or modify an XML tag after one selects text, a text frame or an existing XML tag. It works fine for making the XML tag but it does not associate the text or text frame to the tag. To do that I have to right click on the selection and use the context menu to Tag Text or Tag Frame.
I want to make this automatic but cannot see how to script it.
Thanks for any helpI figured out the problem (which of course creates other interesting problems).
In the line:
var elementRef = rootElement.xmlElements.add (tagRef);
I forgot to add a reference to the xmlContent. It should read:
var elementRef = rootElement.xmlElements.add (tagRef, whatToTag);
However, this script is designed to create a dialog box where one can either create a tag along with attributes or edit an existing one. I'll post it when I am done, but there is one hangup. The script not only changes the name of a selected xml tag but all tags with the same name. How can I get it to change only the selected tag? Below is the boiled down script that duplicates that problem.
Thanks,
Tom
var myDoc = app.activeDocument;
var selObj = app.selection[0];
var TagIWantToChange = selObj.markupTag;
var newTagName = "PleaseWork"; //This line replaces all the coding to create a dialog box where the tag name could be edited.
TagIWantToChange.name = newTagName;
Maybe you are looking for
-
Should I set up as new iPhone or restore from backup 3GS to 4S?
Just got my 4S and I'm upgrading from 3GS. Should I set it up as a new phone or should I restore from iTunes backup during the 4S setup? I want to keep my contacts, apps, etc.
-
Filling out online forms with java
I wanted to create a program that will fill out a form on a website by running a java program. COuld anyone tell me what i would use to make the program fill in i guess a text feild and then select a radio button and submitting the results? I tried l
-
Alrighty; I just purchased the iPhone 4s and last night was prompted to upgrade to IOS 5.1. After doing so, I noticed today any incoming calls from one of my contacts would not display the name (the number was displayed as if it was an unknown call)
-
Total pages printed issue in Smartforms
Hi, I have small issues in Smartforms, I wm working for Check Printing in Smartforms. Here after printed the various checks i am printing the summary report, here i printede the details of total transactions and total printed pages. If i have more t
-
How to keep my secure my business applicatoins work email from my kid/family
Since my kid and dad/mom use my ipad2 for playing games,fun, youtube, I require some help to protect ipad for security reasons all of them are non-techy and many times delete required apps/data. 1. I dont want them to be able to purchase any stuff ac