How to force field to appear in input structure in content conversion
Hi all,
I am doing file content conversion in sender File adapter. Here is the structure
Header
Body
field1 - length 2
field2 - occurrence 1:1, length 3
field3 - length 2
field4 length 2
Trailer
Here is the fixed length file that is inputed into XI
<b>header22 2211trailer</b>
field2 occrence is 1:1 and as you se from the file example field2 from the body is empty(just space).But When I do the content conversion I don;t have this field showing up in my structure!??!!
I want to make sure that field2 appears even as empty field because that is screwing my mapping!?
Can you please have any idea how to make sure that field is in my input structure when I pass spaces?Can I force it somehow?
Thanks all.
Hi Jon,
Yes you are right.
For Ex: ur XML is
<1>a</1>
<2>b</2>
and sometime is there is no value ur FCC will become
<1>a</1>
So what you have to do is in the message mapping take the source element
if <2> exists then <2>---->Target
else
<2>---->Constant(space)
and this "exists" is a standard function in NodeFunctions.
Regards,
Similar Messages
-
How to set fields contained in an input structure as not mandatory in WSDL
Hi all,
I hope someone can help me sort out a problem I've been having recently.
I'm generating a WSDL from a function module, which has a structure as the only input parameter. This structure contains a number of fields, which need to be presented as not mandatory in the WSDL descriptor.
I modified the function module by setting the structure and all its contained fields as not mandatory, but when I generate the related WSDL it shows the structure as optional and its subfields as mandatory.
Below is a snippet of the WSDL:
<xsd:element name="Zk4RfcTibcoFatt">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="XZk4Headprev" type="tns:Zk4Headprev" minOccurs="0" /> <-- optional structure
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="Zk4Headprev">
<xsd:sequence>
<xsd:element name="RecordType" type="n0:char4" /> <-- non optional parameters
<xsd:element name="IdricTecn" type="n0:char15" />
<xsd:element name="IdricFour" type="n0:char15" />
<xsd:element name="CodOperaz" type="n0:char4" />
</xsd:sequence>
</xsd:complexType>
I can't understand why the stucture's elements are not defined as optional in the WSDL, while they're configured as optional in the function module definition. I'd expect a minOccurs="0" added to each structure's element definition.
I even tried modifying manually the WSDL from SE80, but it seems it can't be altered in any way.
Has anyone a solution to this problem?
Thanks in advance.
Best Regards.I tried to do that, but I can't manage to edit the WSDL in SE80, is there a way to do it?
I also tried modifying the WSDL in an external editor, but I can't find a way to switch the edited one with the original one in SAP.
Can you please help me on that?
Thanks in advance for any help you can give me. -
How to control field status depending on input parameter to screen?
Hi,
I'm sure I met the solution somewhere, but can't find it. Here is the situation:
I have Screen sequence - my scr.100 calls 110 (detailed screen). I would like to achieve creation or modification of a detailed item depending on an input parameter (ok_code), which I know how, but whould also like to set some fields for input/output or for output only depending on the same parameter.
Could anyone help me with piece of code or describing what should I do to achieve this (in an example of 1 field)?
Possible variant is to create another screen - for modify mode, which is not so elegant for me, and yes, I know how to do that.
Many thanks in advance.
Ivaylo MutafchievTry this.....
LOOP at Screen.
if screen-name = 'YOURFIELD'.
screen-input = '0'.
modify screen.
endif.
endloop.
Regards,
Rich Heilman -
How to force to wait and get input from a jframe-jpanel?
I would like to use a jframe-jpanel to get user input instead of using JOptionPane.showInputDialog since there will be more than 1 input.
But I could not do it. The code reads the panel lines and passes to other lines below without waiting for the okay button to be pressed.
This is the part of code of my main frame;
jLabel10.setText(dene.toString());
if (dene == 0) {
// todo add button input panel
//String todo_write = JOptionPane.showInputDialog("Please enter a todo item");
JFrame frameTodoAddInput = new JFrame( "Please input..." );
TodoAddAsk1JPanel todoaddpanel = new TodoAddAsk1JPanel();
frameTodoAddInput.add(todoaddpanel);
frameTodoAddInput.setSize( 600, 200 ); // set frame size
frameTodoAddInput.setLocation(300, 300);
//String todo_write = todoaddpanel.getNewTodoItem();
String todo_write = todoaddpanel.getNewTodoItem();
jLabel10.setText("Satir 1822 de".concat(todo_write));
// end of todo add button input panel
todoTextPane1.setText(todo_write);
This is the code of input panel;
* TodoAddAsk1JPanel.java
* Created on May 6, 2007, 12:03 AM
package javaa;
public class TodoAddAsk1JPanel extends javax.swing.JPanel {
/** Creates new form TodoAddAsk1JPanel */
public TodoAddAsk1JPanel() {
initComponents();
private String NewTodoItem = "";
public String getNewTodoItem() {
NewTodoItem = ANewTodoItemTextField.getText();
return this.NewTodoItem;
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
// <editor-fold defaultstate="collapsed" desc=" Generated Code ">
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
ANewTodoItemTextField = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
PriorityComboBox = new javax.swing.JComboBox();
jLabel3 = new javax.swing.JLabel();
DayValueComboBox = new javax.swing.JComboBox();
MonthValueComboBox = new javax.swing.JComboBox();
YearValueComboBox = new javax.swing.JComboBox();
OkayButton = new javax.swing.JButton();
CancelButton = new javax.swing.JButton();
TimeValueComboBox = new javax.swing.JComboBox();
jLabel1.setText("Please enter a todo item:");
jLabel2.setText("Please select its priority level:");
PriorityComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "A", "B", "C" }));
jLabel3.setText("Please select its due date:");
DayValueComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31" }));
MonthValueComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }));
YearValueComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "2007", "2008", "2009", "2010", "2011", "2012", "2013", "2014", "2015", "2016", "2017", "2018", "2019", "2020", "2021", "2022", "2023", "2024", "2025", "2026", "2027", "2028", "2029", "2030", "2031", "2032", "2033", "2034", "2035", "2036", "2037", "2038", "2039", "2040", "2041", "2042", "2043", "2044", "2045", "2046", "2047", "2048", "2049", "2050", "2051", "2052", "2053", "2054", "2055", "2056", "2057", "2058", "2059", "2060", "2061", "2062", "2063", "2064", "2065", "2066", "2067", "2068", "2069", "2070" }));
OkayButton.setText("OK");
OkayButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
OkayButtonActionPerformed(evt);
CancelButton.setText("Cancel");
TimeValueComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "08:30", "09:00", "09:30", "10:00", "10:30", "11:00", "11:30", "12:00", "12:30", "13:00", "13:30", "14:00", "14:30", "15:00", "15:30", "16:00", "16:30", "17:00", "17:30", "18:00", "18:30", "19:00", "19:30", "20:00", "20:30", "21:00", "21:30", "22:00", "22:30", "23:00", "23:30", "00:00", "00:30", "01:00", "01:30", "02:00", "02:30", "03:00", "03:30", "04:00", "04:30", "05:00", "05:30", "06:00", "06:30", "07:00", "07:30", "08:00" }));
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 142, Short.MAX_VALUE)
.addComponent(jLabel2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel3, javax.swing.GroupLayout.DEFAULT_SIZE, 142, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(PriorityComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(ANewTodoItemTextField, javax.swing.GroupLayout.PREFERRED_SIZE, 279, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(OkayButton, javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 133, Short.MAX_VALUE)
.addComponent(CancelButton))
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
.addComponent(DayValueComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(MonthValueComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(YearValueComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGap(13, 13, 13)
.addComponent(TimeValueComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(42, 42, 42)))
.addContainerGap())
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(ANewTodoItemTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel1))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(PriorityComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(DayValueComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(MonthValueComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(YearValueComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(TimeValueComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(OkayButton)
.addComponent(CancelButton))
.addContainerGap())
}// </editor-fold>
private void OkayButtonActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
NewTodoItem = ANewTodoItemTextField.getText();
// Variables declaration - do not modify
private javax.swing.JTextField ANewTodoItemTextField;
private javax.swing.JButton CancelButton;
private javax.swing.JComboBox DayValueComboBox;
private javax.swing.JComboBox MonthValueComboBox;
private javax.swing.JButton OkayButton;
private javax.swing.JComboBox PriorityComboBox;
private javax.swing.JComboBox TimeValueComboBox;
private javax.swing.JComboBox YearValueComboBox;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
// End of variables declaration
I want to get the resulted input of "NewTodoItem"
Thanks in advance for your kind help.
GuvenThank you very much for your help. But I would like
to get 3 inputs from 1 window at the same time and I
could not find any example code for JDialog for more
than 1 input. If any body can show how to write this
code, it would be appreciated.
ThanksYou can write your own. A JDialog is a container just look a JFrame is. -
How to force focus last focused HTML input element when going back in history with backspace?
SUMMARY: I am a Firefox user with HTML knowledge. I want to be able to configure Firefox to behave in a special manner when I hit backspace. It's something that Firefox already does, BUT NOT ALWAYS. I don't know why it behaves differently in different situations for no apparent reason. I want to be able to configure firefox to ALWAYS behave in the manner I want to. Read below for the precise description.
When I fill a FORM in a page, wether POST or GET, and press ENTER, it obviously acts as expected: submits the data and brings me to a new page. When I get to the new page, and I press BACKSPACE, Firefox behaves in sometimes like TYPE 1 and sometimes like TYPE 2 (see below), and I can't predict which one he will choose. I want to be able to configure it to behave ALWAYS like TYPE 2.
TYPE 1 - Firefox reloads the previous page, as if I just entered it for the first time.
TYPE 2 - Firefox brings me back to the exact same page view I had before pressing ENTER to submit the FORM.
2.1 - It doesn't reload the page;
2.2 - It places the page in the same scrolled position I was before (for example, if I scrolled to the bottom of the page to fill the FORM and press enter, after pressing backspace it brings me to the bottom of the page again;
2.3 - It automatically focus the HTML input element I last typed (the element that was focused at the very moment I pressed ENTER to submit the FORM).
So, I want to be able to configure Firefox for it to ALWAYS BEHAVE LIKE TYPE 2 whenever I fill a HTML FORM, press ENTER and press backspace after going to the new page. All three details I gave are important. Remember that I've already experienced TYPE 2 in previous versions of Firefox, I just wish to FORCE IT to behave like that ALWAYS (because for no apparent reason, sometimes it behaves like TYPE 1 instead).
Please let me know if that's possible, and if not, I would really THANK YOU ALL FOREVER if you add this feature to the next version.It's set to true.
I saw the add on you suggested, but it does not fulfill my needs.
I like the behavior exactly as I said because, after submitting the form, I want to be able to look something in the new page and quickly get back to the form, change the text I wrote in the input element and submit it again, in a matter of one or two seconds only...
I was able to do that whenever firefox behaved like TYPE 2 (explained above)...
Thanks for the reply but didn't solve my problem yet... -
How to pull field data if it is structure
Dear experts,
In va01 in account assignment we have profit segment. In profit segment we have cost centre for (co -moudle) which is structure field.
My requirment is to pull cost centre data in the user exit. can anybody help me.
regads.
ShashiHi ,
even if a structure is given there , it does not mean you will get data from there you you will be able to uodate data there. Structures never store data at any point of time.
So you need to find out the corresponding table see this VBAP (KOSTL)
Give the document number/item no as a selection criteria and fetch KOSTL from VBAP.
Hope this is helpful.
Regards,
Uma Dave -
New material specifi field not appearing in LSMW objects
Dear all,
Within the conversion process, we have to load "Z" specific fields whose values are stored in the MARC table but that are not appearing in the standard LSMW object 0020 - Material master. Is there a specific step or action to be taken (or object to be selected in LSMW) so these fields would appear in the structure ?
Thanks for your answer,
CheersHi Olivier
Standard object 0020 gives fields only available in standard tables MARA , MARC , MBEW, MAKT . I too faced this problem for ML based fields in accounting & costing views ( as these fields are not in MBEW they are in CKMLHD). The said Z field if it does not exist in MARC it cannot be seen through std object. U need to do a saperate recording to upload this field. I dont see any other option to my knowledge.U can up load remaing fields through the std object 0020 & create a saperate recorded LSMW only for this Z field.
regards
prasad
reward if useful -
Error in Sender File content Conversion - how to ignore keyfieldName
Dear Frndz,
I'm new to SAP PI. I want to post a flat file to ECC.
The Souce Structure is:
Record(1-unbounded)
|_Header(1.1)
field1
field2
field3
|_Detail(1.unbounded0
field4
field5
field6
Sample File:
first header - xx,yy,zz
Detail 1 - 1,b,c
Detail 2 - 2,e,f
second header - aa,bb,cc
Detail 1 - 1,g,d
I wrote the file content conversion as follows
Recordset name - Record
Recordset Structure - Header,1,Detail,*
Header.fieldNames field1,field2,field3
Header.feldseparator ,
Header.endseparator 'nl'
Detail.fieldNames field4,field5,field6
Detail.fieldseparator ,
Detail.endseparator 'nl'
Conversion initialization failed: java.lang.Exception: java.lang.Exception: java.lang.Exception: Error(s) in XML conversion parameters found: Mandatory parameter 'xml.keyfieldName': no value found
It's asking me to give the input to keyfieldname. But I dont have such field in my record. Ther's no common field . no field is repeating like record type or doc_type as in other cases.
So, Coud you please guide me to proceed with this.
Thanks in advance.....Hi,
Please, take a look to these Blogs related to FCC
Troubleshooting the File Adapter (Last Updated on 02 July'10)
Content Conversion (Pattern/Random content in input file)
File Content Conversion for Unequal Number of Columns
The specified item was not found.
Content Conversion ( The Key Field Problem )
NAB the TAB (File Adapter)
Rgds
RP-. -
How to escape newline character(nl) in file content conversion parameter?
Hi Experts,
How to escape newline character(nl) in file content conversion parameter?
For example:
field1field2field3
field4field5field6
Means Item is splitted in two lines.
I want to SKIP new line character
and to collect all SIX fields.
What will be the file content conversion parameter?
Thanks in Advance..........Hi,
as far as i know there is nothing in the standard. But the question is why dont you combine at mapping the fields into only structure?
Regards,
Udo -
Content conversion sender keyfield + unknow length field
hi,
I have a file with lines. the first six chars of each line tells me which type of line it is.
I need to split the file to files which contains only one type of lines each.
I bulit data type with 2 fields : ID - length = 6 chars, Data - length unknown.
I can use ID as keyfield but i don't have length or separator.
How do i achive the split with the sender channel content conversion?
Is there another way I can define my data type to solve this?
Thanks
TomerHi
You can use the FCC parameter
fieldFixedLengths and fieldNames.
Define fieldName as ID and length will be 6. The remaining can be taken into different field.
This you can map to two different structures in message mapping. If you are confirtable with Java or XSLT that can work too.
Thanks
Gaurav -
How to set mask in web dynpro input fields
i am looking for how to set mask in web dynpro input fields.
Please suggestArgha,
As Maksim suggested, read my weblog -- it is an exact answer for such "masking" (/people/valery.silaev/blog/2005/11/29/800format-your-way)
Next, you may not add custom js files to WebDynpro and change the way WD processes client input, so there is no way to force user to type only digits and to insert hyphens automatically.
Valery Silaev
EPAM Systems
http://www.NetWeaverTeam.com -
How to make numbers in message text input fields left aligned?
Hi Friends
I have completed one of my task .but getting result right side of the field.
how to make numbers in message text input fields left aligned?
Thanks
AravindaHi ,
Sorry for late replay i am trying this alos not set that page....
pageContext.forwardImmediatelyToCurrentPage(null, true, null);
and one more that kff field working is fine for ex display any text pled displayed properly and only problem is not set the value and HrSitKeyFlex6 and HrSitKeyFlex7 fields are perfectly get the values but not pront HrSitKeyFlex8 that only my issue....
Regards,
Srini -
How i can show the selection screen input field in the top of page in alv
hi ,
how i can show the selection screen input field in the top of page in alv grid output.
tell me the processHi,
excample from my program:
FORM topof_page.
DATA: l_it_header TYPE TABLE OF slis_listheader WITH HEADER LINE,
l_info LIKE l_it_header-info.
DATA: l_it_textpool TYPE TABLE OF textpool WITH HEADER LINE.
DATA: l_key LIKE l_it_textpool-key.
READ TEXTPOOL c_repid INTO l_it_textpool LANGUAGE sy-langu.
DEFINE m_selinfo.
if not &1 is initial.
clear l_it_header.
l_it_header-typ = 'S'.
l_key = '&1'.
translate l_key to upper case.
read table l_it_textpool with key key = l_key.
if sy-subrc = 0.
shift l_it_textpool-entry left deleting leading space.
l_it_header-key = l_it_textpool-entry .
endif.
loop at &1.
case &1-option.
when 'EQ'
or 'BT'
or 'CP'.
write &1-low to l_it_header-info.
when others.
write &1-low to l_it_header-info.
concatenate &1-option
l_it_header-info
into l_it_header-info
separated by space.
endcase.
if not &1-high is initial.
write &1-high to l_info left-justified.
concatenate l_it_header-info
l_info
into l_it_header-info
separated by space.
endif.
if &1-sign = 'E'.
concatenate ']'
l_it_header-info
into l_it_header-info.
endif.
append l_it_header.
clear: l_it_header-key,
l_it_header-info.
endloop.
endif.
END-OF-DEFINITION.
m_selinfo: s_trmdat,
s_trmext,
s_trmint,
s_fkdat,
s_delno,
s_vbeln,
s_deact,
s_kdmat.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = l_it_header[].
ENDFORM.
I hope, this will help you.
Regards
Nicole -
How to force digital input sample rate?
Does anyone know how to force a Digital Input sample rate and/or tell Core Audio which conversion clock to use... internal or external? Apparently both things can be done from Pro Tools, but I don't have it. My problem is locking onto an A/D converter's 48K Toslink output. I can set 48K in 'Audio - Midi' setup and the audio is perfect, but a few seconds later Core Audio returns to the default 44.1K. I need to force it to stay at 48K, or clock on the signal rather than internal clock.
Braver,
Let me clarify a few things. First, the 6733 supports correlated digital I/O. This means that the digital operation does not have its own clock. You can correlate the digital operation with the AO clock, which will allow a digital operation up to the max AO rate. You can generate a pulse train with an onboard counter and use that as your digital clock source. Also, you can use a completely external clock source to achieve the max digital rate of 10MHz. The knowledge base, linked below, points you to a couple of examples that ship with LabVIEW. Be sure and read the documentation associated with each example.
Knowlege Base
As for
the example CDI Single Point clocked by Counter (E).vi, notice how the output of... -
Changing an input field's appearance to Optional in an ESS WD Java scenario
This thread is posted to help customers with a common user based issue with ESS
SAP may deliver some fields in ESS iviews as mandatory however you may not want some fields to be mandatory and may want the iview display to guide the user appropriately
Often delivered mandatory fields have an Asterisk denoting this field as a mandatory
requirement for data entry in the ESS scenario
The purpose of this post is to show how the Asterisk can be removed and therefore indicate to the user that an entry is not required
There may be 2 ways to do this
1) As of a SP9 in ERP 6.0 press Ctrl and Right mouse button on the field in the PCD preview of the iview you wish to modify. In the Personalization options there is a "Mark as Mandatory" option please select "Not Personalized" and save then review the iview to see if the asterisk is removed
2) If this does not have the desired effect or you have a lower SAP version or SP level you will need NWDI to make the change. You will require knowledge of NWDI to make the change -->
Open the required scenario in NWDS
Position cursor on Required field and right click and select u2018Propertiesu2019
Go to the u2018Propertiesu2019 tab
Change property field u2018Stateu2019 from u2018Requiredu2019 to u2018Normalu2019
Save the changes
As this field now appears as optional to the user you also have to ensure the
ECC business logic does not reject a user who does not populate the field with data - therefore you will need mark the field as optional in
V_T588M
V_T588MFPROPS
These changes also affect entry of data into this field in PA30 - HR Administrators or users with R3 access will therefore have the same user experience (i.e field is not mandatory)
If you have issues maintaining V_T588MFPROPS appropriately you can insert an overide into V_T588MFPROPC
If you find the ESS scenario still requests an entry in the field it could be that this field is an essential
or core part of this particular ESS scenario and therefore the model expects data to be populated in this field or it could also be that previous or subsequent fields are dependant on an entry in that field - In this case you may need to make a coding change to the model and/or change the business logic of dependant fields as well.
Edited by: Stuart Campbell on May 8, 2009 1:07 PMThank you stuart.
Maybe you are looking for
-
How to load old voice memos to new iphone 4s
hello, i'm trying to load old voice memos from 3gs to new 4s. when i plug in the new 4s i have a playlist called voice memos and it appears to be on the 4s phone but i can't find it on the phone when doing a search for the name and or looking in the
-
How to enter many receiving lines for one PO Line
Hi, we are working in oracle applications 11i From Oracle Inventory Responsibility->Transactions->Receiving: Enter Purchase Order Number: Receipts Window: we have a line with item quantity of 100 (for example). I need to receive that item on many lin
-
Problem opening photos with camera raw 7.1 with Photoshop CS6
I am using Windows 7 32 bit system with 4GB ram and graphics accelerator. I have Photoshop CS5.1 installed in the same system at it works perfectly. What happens is when I use the B+W function, I get an error message saying that I have not enough ram
-
Sold a faulty power adaptor which set fire to the plug socket.
I recently purchased a power adaptor (not the USB cable) in order to charge my iPod. This purchase, admittedly was from Amazon, however, the seller claimed to be an authorised seller and that the product was genuine. When the item arrived, it was muc
-
Unable to start the Test Drive
Hi, I have some problems to start the test drive on my Macbook OS X. After i start the catalina.sh, the terminal says this: Unable to connect to the samples database. * * You must start the samples database before you can run the samples. * * To star