DirectToXMLTypeMapping "create-tables" not generating XMLTYPE column type
Can someone tell me how to code an XMLTYPE field such that "create-tables" will generate the XMLTYPE column and such that the IntegrityChecker will not throw an error.
I am forced to run these alters after "create-tables" is run.
ALTER TABLE XML_SYS_MSG drop column message;
ALTER TABLE XML_SYS_MSG add (message XMLType);
Snippets:
<persistence...
<property name="eclipselink.ddl-generation" value="create-tables" />
</persistence>
public class XmlMessageCustomizer implements DescriptorCustomizer {
@Override
public void customize(final ClassDescriptor descriptor) throws Exception {
final DirectToXMLTypeMapping mapping = new DirectToXMLTypeMapping();
descriptor.removeMappingForAttributeName("message");
// name of the attribute
mapping.setAttributeName("message");
// IntegrityChecker requires uppercase for oracle
// name of the column
mapping.setFieldName("MESSAGE");
descriptor.addMapping(mapping);
@Entity(name = "XmlMessage")
@Table(name = "XML_MSG")
@Customizer(XmlMessageCustomizer.class)
public class XmlMessage {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "ID")
private long id;
// @Column(columnDefinition = "XMLTYPE")
// private String message;
// ALTER TABLE XML_SYS_MSG drop column message;
// ALTER TABLE XML_SYS_MSG add (message XMLType);
private Document message;
public XmlMessage() {
public long getId() {
return id;
public void setId(final long id) {
this.id = id;
public Document getMessage() {
return message;
public void setMessage(final Document message) {
this.message = message;
Secondly if I turn on the IntegrityChecker it will fail
public class EnableIntegrityChecker implements SessionCustomizer {
@Override
public void customize(final Session session) throws Exception {
session.getIntegrityChecker().checkDatabase();
session.getIntegrityChecker().setShouldCatchExceptions(false);
}
Adding:
mapping.getField().setColumnDefinition("XMLTYPE");to the customizer should solve the problem.
--Shaun
Similar Messages
-
Create Foregn Key on xmltype column
I get ora-00904 while executing following code. I have created hematest table on registerd schema.
alter table hematest
add constraint valid_area
foreign key (xmldata."area") references test_are(area_test);I am sending script for my xm schema, xml type table based on the registered schema , oracle relational table that foreign key is references and script for generating foreign key.
<schema elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.domain name/fraamed_test/event_start.xsd" xmlns:event_start="http://www.domain name/fraamed_test/event_start.xsd" xmlns:oraxdb="http://xmlns.oracle.com/xdb" oraxdb:flags="7" oraxdb:schemaURL="http://www.domain name/fraamed_test/event_start.xsd" oraxdb:schemaOwner="FRAAMED_TEST" oraxdb:numProps="55">
<annotation>
<documentation>
All date tags are formatted YYYY-MM-DD.
All time tags are formatted HH:MM:SS. Note: SS can be set to 00 when not needed.
The event_link is the linking number that links several events together that are involved in the same
mission being performed at the same scheduled time. This can be anything as long as it is numeric.
It is recommended that and event_identifier from one of the events being linked together be used. To
be linked all events doing the same mission need this tag filled and it must be the same value for all
the linked events, including the one that may have the same event_identifier.
The status are the following: P-Pending, SA-Squadron Authorized, AA-AirOpds Authroized,
IP-InProgress, F-Finished, C-Cancelled, P-Postponed, D-Deleted, R-Rescheduled.
The status_code is a code that to provide further information about a given status. In particular it
should be used when a status of C, P, D, or R is used.
The airfield_location is a runway number or field location like grass, gravel, etc.
</documentation>
</annotation>
<element name="event_start" oraxdb:propNumber="5125" oraxdb:global="true" oraxdb:SQLName="event_start" oraxdb:SQLType="event_start1290_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:defaultTable="event_start1306_TAB" oraxdb:defaultTableSchema="FRAAMED_TEST">
<complexType oraxdb:SQLType="event_start1290_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="location" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5071" oraxdb:global="false" oraxdb:SQLName="location" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="15"/>
<minLength value="2"/>
</restriction>
</simpleType>
</element>
<element name="sending_system" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5072" oraxdb:global="false" oraxdb:SQLName="sending_system" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="10"/>
<minLength value="2"/>
</restriction>
</simpleType>
</element>
<element name="transaction_date" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5075" oraxdb:global="false" oraxdb:SQLName="transaction_date" oraxdb:SQLType="transaction_date1291_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:SQLInline="true" oraxdb:MemInline="false" oraxdb:JavaInline="false">
<complexType oraxdb:SQLType="transaction_date1291_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="date" minOccurs="1" maxOccurs="1" type="date" oraxdb:propNumber="5073" oraxdb:global="false" oraxdb:SQLName="date" oraxdb:SQLType="DATE" oraxdb:memType="12" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true"/>
<element name="time" minOccurs="1" maxOccurs="1" type="time" oraxdb:propNumber="5074" oraxdb:global="false" oraxdb:SQLName="time" oraxdb:SQLType="TIMESTAMP" oraxdb:memType="180" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true"/>
</sequence>
</complexType>
</element>
<element name="event_identifier" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5076" oraxdb:global="false" oraxdb:SQLName="event_identifier" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="positiveInteger">
<maxInclusive value="999999999999"/>
</restriction>
</simpleType>
</element>
<element name="event_link" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5077" oraxdb:global="false" oraxdb:SQLName="event_link" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="positiveInteger">
<maxInclusive value="999999999999"/>
</restriction>
</simpleType>
</element>
<element name="organization_code" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5078" oraxdb:global="false" oraxdb:SQLName="organization_code" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="25"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="scheduled_time" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5082" oraxdb:global="false" oraxdb:SQLName="scheduled_time" oraxdb:SQLType="scheduled_time1292_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:SQLInline="true" oraxdb:MemInline="false" oraxdb:JavaInline="false">
<complexType oraxdb:SQLType="scheduled_time1292_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="date" minOccurs="1" maxOccurs="1" type="date" oraxdb:propNumber="5079" oraxdb:global="false" oraxdb:SQLName="date" oraxdb:SQLType="DATE" oraxdb:memType="12" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true"/>
<element name="time" minOccurs="1" maxOccurs="1" type="time" oraxdb:propNumber="5080" oraxdb:global="false" oraxdb:SQLName="time" oraxdb:SQLType="TIMESTAMP" oraxdb:memType="180" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true"/>
<element name="event_duration_minutes" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5081" oraxdb:global="false" oraxdb:SQLName="event_duration_minutes" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="positiveInteger">
<maxInclusive value="3600"/>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
<element name="actual_event_end_time" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5085" oraxdb:global="false" oraxdb:SQLName="actual_event_end_time" oraxdb:SQLType="actual_event_end_time1293_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:SQLInline="true" oraxdb:MemInline="false" oraxdb:JavaInline="false">
<complexType oraxdb:SQLType="actual_event_end_time1293_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="date" minOccurs="1" maxOccurs="1" type="date" oraxdb:propNumber="5083" oraxdb:global="false" oraxdb:SQLName="date" oraxdb:SQLType="DATE" oraxdb:memType="12" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true"/>
<element name="time" minOccurs="1" maxOccurs="1" type="time" oraxdb:propNumber="5084" oraxdb:global="false" oraxdb:SQLName="time" oraxdb:SQLType="TIMESTAMP" oraxdb:memType="180" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true"/>
</sequence>
</complexType>
</element>
<element name="status" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5086" oraxdb:global="false" oraxdb:SQLName="status" oraxdb:SQLType="XDB$ENUM_T" oraxdb:SQLSchema="XDB" oraxdb:memType="259" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<enumeration value="P"/>
<enumeration value="SA"/>
<enumeration value="AA"/>
<enumeration value="IP"/>
<enumeration value="F"/>
<enumeration value="C"/>
<enumeration value="P"/>
<enumeration value="D"/>
<enumeration value="R"/>
</restriction>
</simpleType>
</element>
<element name="overbooked" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5087" oraxdb:global="false" oraxdb:SQLName="overbooked" oraxdb:SQLType="XDB$ENUM_T" oraxdb:SQLSchema="XDB" oraxdb:memType="259" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<enumeration value="Y"/>
<enumeration value="N"/>
</restriction>
</simpleType>
</element>
<element name="status_reason_code" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5088" oraxdb:global="false" oraxdb:SQLName="status_reason_code" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="15"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="tms" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5089" oraxdb:global="false" oraxdb:SQLName="tms" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="10"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="bureau_number" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5090" oraxdb:global="false" oraxdb:SQLName="bureau_number" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="6"/>
<minLength value="0"/>
<pattern value="[0-9]"/>
</restriction>
</simpleType>
</element>
<element name="side_number" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5091" oraxdb:global="false" oraxdb:SQLName="side_number" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="6"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="call_sign" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5092" oraxdb:global="false" oraxdb:SQLName="call_sign" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="40"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="takeoff_airfield" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5093" oraxdb:global="false" oraxdb:SQLName="takeoff_airfield" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="25"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="landing_airfield" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5094" oraxdb:global="false" oraxdb:SQLName="landing_airfield" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="25"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="mission_airfield" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5095" oraxdb:global="false" oraxdb:SQLName="mission_airfield" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="25"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="airfield_location" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5096" oraxdb:global="false" oraxdb:SQLName="airfield_location" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="25"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="squadron_authorizer" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5101" oraxdb:global="false" oraxdb:SQLName="squadron_authorizer" oraxdb:SQLType="squadron_authorizer1294_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:SQLInline="true" oraxdb:MemInline="false" oraxdb:JavaInline="false">
<complexType oraxdb:SQLType="squadron_authorizer1294_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="salutation" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5097" oraxdb:global="false" oraxdb:SQLName="salutation" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="10"/>
<minLength value="1"/>
</restriction>
</simpleType>
</element>
<element name="first_name" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5098" oraxdb:global="false" oraxdb:SQLName="first_name" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="20"/>
<minLength value="1"/>
</restriction>
</simpleType>
</element>
<element name="last_name" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5099" oraxdb:global="false" oraxdb:SQLName="last_name" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="20"/>
<minLength value="1"/>
</restriction>
</simpleType>
</element>
<element name="title" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5100" oraxdb:global="false" oraxdb:SQLName="title" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="40"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
<element name="airops_authorizer" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5106" oraxdb:global="false" oraxdb:SQLName="airops_authorizer" oraxdb:SQLType="airops_authorizer1295_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:SQLInline="true" oraxdb:MemInline="false" oraxdb:JavaInline="false">
<complexType oraxdb:SQLType="airops_authorizer1295_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="salutation" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5102" oraxdb:global="false" oraxdb:SQLName="salutation" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="10"/>
<minLength value="1"/>
</restriction>
</simpleType>
</element>
<element name="first_name" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5103" oraxdb:global="false" oraxdb:SQLName="first_name" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="20"/>
<minLength value="1"/>
</restriction>
</simpleType>
</element>
<element name="last_name" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5104" oraxdb:global="false" oraxdb:SQLName="last_name" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="20"/>
<minLength value="1"/>
</restriction>
</simpleType>
</element>
<element name="title" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5105" oraxdb:global="false" oraxdb:SQLName="title" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="40"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
<element name="project_code" minOccurs="0" maxOccurs="unbounded" oraxdb:propNumber="5107" oraxdb:global="false" oraxdb:SQLName="project_code" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true" oraxdb:SQLCollType="project_code1296_COLL" oraxdb:SQLCollSchema="FRAAMED_TEST">
<simpleType>
<restriction base="string">
<maxLength value="40"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="airspace" minOccurs="0" maxOccurs="unbounded" oraxdb:propNumber="5117" oraxdb:global="false" oraxdb:SQLName="airspace" oraxdb:SQLType="airspace1297_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:SQLInline="true" oraxdb:MemInline="false" oraxdb:JavaInline="false" oraxdb:SQLCollType="airspace1300_COLL" oraxdb:SQLCollSchema="FRAAMED_TEST">
<complexType oraxdb:SQLType="airspace1297_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="area" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5108" oraxdb:global="false" oraxdb:SQLName="area" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="20"/>
<minLength value="3"/>
</restriction>
</simpleType>
</element>
<element name="area_qualified" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5116" oraxdb:global="false" oraxdb:SQLName="area_qualified" oraxdb:SQLType="area_qualified1298_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:SQLInline="true" oraxdb:MemInline="false" oraxdb:JavaInline="false">
<complexType oraxdb:SQLType="area_qualified1298_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="direction" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5109" oraxdb:global="false" oraxdb:SQLName="direction" oraxdb:SQLType="XDB$ENUM_T" oraxdb:SQLSchema="XDB" oraxdb:memType="259" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<enumeration value="N"/>
<enumeration value="S"/>
<enumeration value="E"/>
<enumeration value="W"/>
<enumeration value="NE"/>
<enumeration value="NW"/>
<enumeration value="SE"/>
<enumeration value="SW"/>
</restriction>
</simpleType>
</element>
<element name="exclusive" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5110" oraxdb:global="false" oraxdb:SQLName="exclusive" oraxdb:SQLType="XDB$ENUM_T" oraxdb:SQLSchema="XDB" oraxdb:memType="259" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<enumeration value="Y"/>
<enumeration value="N"/>
</restriction>
</simpleType>
</element>
<element name="min_altitude" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5111" oraxdb:global="false" oraxdb:SQLName="min_altitude" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="integer">
<maxInclusive value="9999999"/>
<minInclusive value="-999999"/>
</restriction>
</simpleType>
</element>
<element name="max_altitude" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5112" oraxdb:global="false" oraxdb:SQLName="max_altitude" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="integer">
<maxInclusive value="9999999"/>
<minInclusive value="-999999"/>
</restriction>
</simpleType>
</element>
<element name="area_time" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5115" oraxdb:global="false" oraxdb:SQLName="area_time" oraxdb:SQLType="area_time1299_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:SQLInline="true" oraxdb:MemInline="false" oraxdb:JavaInline="false">
<complexType oraxdb:SQLType="area_time1299_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="time" minOccurs="1" maxOccurs="1" type="time" oraxdb:propNumber="5113" oraxdb:global="false" oraxdb:SQLName="time" oraxdb:SQLType="TIMESTAMP" oraxdb:memType="180" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true"/>
<element name="area_duration_minutes" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5114" oraxdb:global="false" oraxdb:SQLName="area_duration_minutes" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="positiveInteger">
<maxInclusive value="3600"/>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
<element name="mission" minOccurs="0" maxOccurs="unbounded" oraxdb:propNumber="5118" oraxdb:global="false" oraxdb:SQLName="mission" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true" oraxdb:SQLCollType="mission1301_COLL" oraxdb:SQLCollSchema="FRAAMED_TEST">
<simpleType>
<restriction base="string">
<maxLength value="25"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
<element name="resource_codes" minOccurs="0" maxOccurs="unbounded" oraxdb:propNumber="5123" oraxdb:global="false" oraxdb:SQLName="resource_codes" oraxdb:SQLType="resource_codes1302_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:SQLInline="true" oraxdb:MemInline="false" oraxdb:JavaInline="false" oraxdb:SQLCollType="resource_codes1304_COLL" oraxdb:SQLCollSchema="FRAAMED_TEST">
<complexType oraxdb:SQLType="resource_codes1302_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="resource" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5119" oraxdb:global="false" oraxdb:SQLName="resource" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="35"/>
<minLength value="1"/>
</restriction>
</simpleType>
</element>
<element name="resource_qualified" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5122" oraxdb:global="false" oraxdb:SQLName="resource_qualified" oraxdb:SQLType="resource_qualified1303_T" oraxdb:SQLSchema="FRAAMED_TEST" oraxdb:memType="258" oraxdb:SQLInline="true" oraxdb:MemInline="false" oraxdb:JavaInline="false">
<complexType oraxdb:SQLType="resource_qualified1303_T" oraxdb:SQLSchema="FRAAMED_TEST">
<sequence>
<element name="exclusive" minOccurs="1" maxOccurs="1" oraxdb:propNumber="5120" oraxdb:global="false" oraxdb:SQLName="exclusive" oraxdb:SQLType="XDB$ENUM_T" oraxdb:SQLSchema="XDB" oraxdb:memType="259" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<enumeration value="Y"/>
<enumeration value="N"/>
</restriction>
</simpleType>
</element>
<element name="location" minOccurs="0" maxOccurs="1" oraxdb:propNumber="5121" oraxdb:global="false" oraxdb:SQLName="location" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true">
<simpleType>
<restriction base="string">
<maxLength value="15"/>
<minLength value="1"/>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
<element name="comments" minOccurs="0" maxOccurs="unbounded" oraxdb:propNumber="5124" oraxdb:global="false" oraxdb:SQLName="comments" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:SQLInline="true" oraxdb:MemInline="true" oraxdb:JavaInline="true" oraxdb:SQLCollType="comments1305_COLL" oraxdb:SQLCollSchema="FRAAMED_TEST">
<simpleType>
<restriction base="string">
<maxLength value="4000"/>
<minLength value="0"/>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
</schema>
create table frmd_event_start(
event_start xmltype)
xmltype column event_start
XMLSCHEMA "www.domain name/fraamed_test/frmd_event_start.xsd"
element "event_start";
CREATE TABLE AREAS
AREA VARCHAR2(10 BYTE)
TABLESPACE FRMD_DEFAULT
PCTUSED 40
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
FREELISTS 1
FREELIST GROUPS 1
BUFFER_POOL DEFAULT
NOLOGGING
NOCACHE
NOPARALLEL;
CREATE UNIQUE INDEX PK_AREA ON AREAS
(AREA)
NOLOGGING
TABLESPACE FRMD_DEFAULT
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
FREELISTS 1
FREELIST GROUPS 1
BUFFER_POOL DEFAULT
NOPARALLEL;
ALTER TABLE AREAS ADD (
CONSTRAINT PK_AREA PRIMARY KEY (AREA)
USING INDEX
TABLESPACE FRMD_DEFAULT
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
FREELISTS 1
FREELIST GROUPS 1
SQL> alter table frmd_event_start
2 add constraint VALID_AREA
3 foreign key (xml_event_starts."area") references areas(area);
foreign key (xml_event_starts."area") references areas(area)
ERROR at line 3: -
Difference between an XMLType table and a table with an XMLType column?
Hi all,
Still trying to get my mind around all this XML stuff.
Can someone concisely explain the difference between:
create table this_is_xmltype_tab of xmltype;and
create table this_is_tab_w_xmltpe_col(id number, document xmltype);What are the relative advantages and disadvantages of each approach? How do they really differ?
Thanks,
-MarkThere is another pointer Mark, that I realized when I was thinking about the differences...
If you would look up in the manual regarding "xdb:annotations" you would learn about a method using an XML Schema to generate out of the box your whole design in terms of physical layout and/or design principles. In my mind this should be the preferred solution if you are dealing with very complex XML Schema environments. Taking your XML Schema as your single point design layout, that during the actual implementation automatically generates and builds all your needed database objects and its physical requirements, has great advantages in points of design version management etc., but...
...it will create automatically an XMLType table (based on OR, Binary XML of "hybrid" storage principles, aka the ones that are XML Schema driven) and not AFAIK a XMLtype column structure: so as in "our" case a table with a id column and a xmltype column.
In principle you could relationally relate to this as:
+"I have created an EER diagram and a Physical diagram, I mix the content/info of those two into one diagram." "Then I _+execute+_ it in the database and the end result will be an database user/schema that has all the xxxx amount of physical objects I need, the way I want it to be...".+
...but it will be in the form of an XMLType table structure...
xdb:annotations can be used to create things like:
- enforce database/company naming conventions
- DOM validation enabled or not
- automatic IOT or BTree index creation (for instance in OR XMLType storage)
- sort search order enforced or not
- default tablenames and owners
- extra column or table property settings like for partitioning XML data
- database encoding/mapping used for SQL and binary storage
- avoid automatic creation of Oracle objects (tables/types/etc), for instance, via xdb:defaultTable="" annotations
- etc...
See here for more info: http://download.oracle.com/docs/cd/E11882_01/appdev.112/e10492/xdb05sto.htm#ADXDB4519
and / or for more detailed info:
http://download.oracle.com/docs/cd/E11882_01/appdev.112/e10492/xdb05sto.htm#i1030452
http://download.oracle.com/docs/cd/E11882_01/appdev.112/e10492/xdb05sto.htm#i1030995
http://download.oracle.com/docs/cd/E11882_01/appdev.112/e10492/xdb05sto.htm#CHDCEBAG
... -
Error while creating table maintenance generator
Hi,
I am getting below error while creating table maintenance generator.
Screen SAPLZtest 0002 could not be generated. In DYNPFIELD_ATTR field LENGTH has the invalid value 241.
Reason for that error might be:
In the table I have a field with a dataelement(customized) of type Char and length 241.
But in the other table Iam using the standard data element(standard) of same type(241 char).In this table Iam able to create table maintenance generator without any errors.
And the domain Iam using is same for both the tables.
Please help me to solve this.
Thanks in advance,
SravanthiHi,
you can go to transaction se51 and go your screen. active it.. you can find thesolution.
refer these links..
Error in table control
Error while creating table maintainence generator !
Thanks and Regards,
Ahamed. -
How to create table maintenance generator?
Dear Sir/Madam,
when i am creating table maintenance generator , it asks for function group
i give 0MB8 , it says u r going to change function group which does not belongs to u,
then i created a function group yfg9 and given , it then says yfg9 cannot be processed.
please telll me how to create the table maintenance generator for maintenance view yv_mmim_rep_cust.
Thanks in advance,
DastagiriHi ,
Table Maintenance generator is used to maintain data in table , instead of giving access to se11 , we create a tcode for this table maintenance generator and we will give this tcode to end-user to maintain data
To generate table Maintenance generator :
click on UTILITIES in menu bar
-> table maintenance generator
-> enter Authorization Group as : &NC&
-> Enter Function Group : name of your table ( so it will create a function group , to check this function group go to tcode se80 : then select function and enter your Table name )
-> Then click on find screen numbers in Application tool bar.
-> Then click on create button in Application tool bar
if it is created successfully , then you will get a status message like table maintained generator is created successfully. -
Can we create table maintence generator with out key field
Hi,
I have created a ztable in that client is the primary key as I don't want any other field as primary key.
For this i have created table maintenace generator but when i open it in sm30 blnak screen is coming.
Here my question is can we create a table maintenace generator with out key field other than MANDT.
If it's possible please let me know.
Regards
hari>
Mathews Joseph wrote:
> I agree to the above points , but you can try one thing.
>
> When you create the table maintenance screen , from SE11 you assign a function group.
>
> Double click on the function group and you can go to the main program and open that in SE80, take screen generated and try manually adjusting the screen and putting the non key field details...
>
> Not sure this will work , but may be you can give it a try.
>
> Mathews
But the table could hold at most a single record (per client). The design is lacking.
Rob -
How to create table.maint.generator and enduser should use using ztcode
Hi,
can any one guide me how to create table maintanence generator and after creating,enduser must use using ztcode.
any help can be appreciated.
Thanks & Regards,
Sandeep.Hi,
Table Maintenance generator is required to do Manual entries in the Table. If the requirement is to update the table only programmatically and not manually then table maint. generator is not required.
Manual entries in table can be maintained ( New record can be inserted / existing can be modified ) using transaction SM 30, if the table maintenance for the table is generated.
How to activate Table maint.
Goto SE11 and open the table.
Click UTILITIES -> Table Maint. Generator, Enter the details and click on Save. Then activate the table.
chk a sample 1.
refer.
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/abap/how%20to%20implement%20events%20in%20table%20maintenance.doc
some more helps
Check out this thread:
table maintenance
http://help.sap.com/saphelp_erp2005/helpdata/en/a7/513520407a11d1893b0000e8323c4f/frameset.htm - a link for basics on Table Maintenance.
Also, Check out this weblog on table maintenance:
/people/sudheer.cheedella/blog/2006/02/20/extracting-data-in-table-maintenance
<b>how to create a a T-code of that</b>
Go to se93.
Then create the new T.code.
Under that select parameter Transaction.
Then give the sm30 in the t.code in default values tab.
check the checkbox skip initial screen.
in classification tab.
click checkbox inherit gui attributes..
Now below..
In the default values..
WRITE
viewname = give ur table name.
show = X
save and check it once...
now u can able to call ur table through ur new t.code...
rgds
anver
if hlped pls mark points -
How to create table maintainenece Generator
hi all
I dont know how to create table maintainence generator after creating the table.
I have created the table.
After that how to maintain the table.
What is the use of table maintainence generator.
ThanksHi Muthu,
Through table maintenance you can direct add new entries in your table. For that u need to follow some steps.
Step1 : Click Delivery and Maintenance tab in your table and select "Display/Maintenance Allowed"
Step2 : Utilities--->Table maint generator
Step3 : Give Authorization Group - &NC&
Step4 : Function group - Any ( You can give ur table name also ) This Function Group will genrate automatically.
Step5 : Maintenance type - Select first radio button "One Step"
Step6 : Maint. Screen No. - Overview screen as 1
Single screen as 0
Step7 : Click on Create button on application tool bar
Step8 : just save in your package.
Step8 : Create transaction code for the same . Environment----->transaction code
Step9 : Give any t.code name and click on create button. You will get a popup where you have to choose last radio button "Transaction with parameter"
Step10 : Give the transaction name - SM30 and check Inherit GUI Attribute"
Step11 : GUI Support - check all the check boxes.
Step12 : Name of screen field Values
VIEWNAME - Table name and
UPDATE - X
Finally u can this t.code and add new entries in ur table directly.
Regards,
Amit Nanda
SAP Consultant -
Hi...
3....how to create table maintanence generator for a z table and how to use that for transfering a selected records to one server to another server.
thanks and regards,
k.swaminath reddyHi,
Table maintanance Generator is used to manually
input values using transaction sm30.The Table Maintenance Generator is used to create table maintenance program to add, modify or delete records in the database table. This can be accessed using transaction SE54 or in SE11 using the menu Utilities->Table Maintenance Generator
<b>
Follow below steps</b>
go to se11 check table maintanance check box under
attributes tab
utilities-table maintanance Generator->
create function group and assign it under
function group input box.
also assign authorization group default &NC& .
select standard recording routine radio in table
table mainitainence generator to move table
contents to quality and production by assigning
it to request.
select maintaience type as single step.
maintainence screen as system generated numbers
this dialog box appears when you click on create
button
save and activate table
http://help.sap.com/saphelp_nw04/helpdata/en/cf/21ed2d446011d189700000e8322d00/content.htm
One step, two step in Table Maintenance Generator
Single step: Only overview screen is created i.e. the Table Maintenance Program will have only one screen where you can add, delete or edit records.
Two step: Two screens namely the overview screen and Single screen are created. The user can see the key fields in the first screen and can further go on to edit further details.
please check the link for getting information about table maintenance generator !
https://www.sdn.sap.com/irj/sdn/advancedsearch?query=use%20of%20table%20maintenance%20generator&cat=sdn_all
http://www.sapdevelopment.co.uk/tips/tips_tabmaint_tcode.htm
http://www.sap-img.com/abap/create-a-table-maintance-program-for-a-z-table.htm
Regards,
Priyanka. -
I created table maintainace generator but while executing this in SM30.
I created table maintainace generator but while executing this in SM30 it's giving following error. Error message " Conversion error"
The program has been interrupted and cannot resume. Program "SAPLZ_DEV_AC_DAT_MOE" attempted to display fields on screen 0001.
An error occurred during the conversion of this data.
Table has following fields:
MANDT MANDT CLNT 3 0 Client
YEAR1 CHAR 4 0 Year
SOLD_TO_PARTY KUNRG CHAR 10 0 Payer
MATNR MATNR CHAR 18 0 Material Number
JANACP CURR 15 2 Jan Accural Plus.
and reference field for JANACP is VBRK-WAERK.
Can anyone help me on this.Hi,
you have a field of type amount and need a referring currency field. You have chosen a VBRK field, but in SM30 you have no connection to a special VBRK entry because of a missing connection on key field VBELN.
Either you create a currency field in your table, or (if possible) you have to add a foreign key relation to VBRK with a fixed VBELN (existing on all systems) to get the VBRK currency. But the second way is no good idea!
You need a currency to get the right decimal point for your amiount.
Regards
Klaus -
Objects created when creating table maintenance generator
Hi guru's,
I heard that when we creating a table maintenance generator for a table, it will create view,search help and some else.Is it true?
Please tell me what objects will be created when we create table maintenance generator for a table and why? what is the exact use of creating table maintenance generator for a
table other than reduces the time for entering large volume of data.
Regards,
Rakesh.Hello Rakesh,
TMG is a tool meant and designed to maintain Customizing table/views. Customizing essentially means, that the data should be transportable across clients/systems.
All this, and the facility to maintain data (display, edit, create, delete, translate) is provided by the TMG. When you make the changes like above, the TMG also provides you features to automatically also enter the changes into transport requests.
Coming to what objects are created when you generate a maintenance dialogue -
1) A Customizing Object (merely a class C/G table or view does not become a
customizing object)
2) A function group (as entered in SE54 details, if the function group does not already
exist)
3) Lot of coding within the function group (Func modules, subroutines, includes)
4) Screen(s) (1 or 2, depending on a setting in the TMG)
5) An automatic recording of all these objects into a transport request, for you to conveniently ship them to other systems in your landscape (this, if automatic recording is
switched ON in your system)
Authorization group - It is not created automatically (unlike function group). You need to specify an existing Auth group, or use a different functionality to create on of your requirements.
Does this answer most of your questions? Please revert if you need more clarifications.
Regards
Rekha
PS: Actually, why dont you try generating a maintenance dialogue for a sample z-table and see what all gets generated? -
Creating Indexes within an XMLType column
Hi,
I have following XML document stored as XMLType column,
<ocaStatus xmlns="http://xmlbeans.apache.org/ocastatus"><status><statusCode>934</statusCode><statusDate>Wed Apr 07 16:05:53 GMT+05:30 2010</statusDate><userId>u0121845</userId><comment>Sent to LTC</comment></status><status><statusCode>934</statusCode><statusDate>Wed Apr 07 15:58:25 GMT+05:30 2010</statusDate><userId>u0121845</userId><comment>Sent to LTC</comment></status><status><statusCode>934</statusCode><statusDate>Wed Apr 07 15:54:02 GMT+05:30 2010</statusDate><userId>u0121845</userId><comment>Sent to LTC</comment></status><status><statusCode>750</statusCode><statusDate>2010-03-31 12:39:41.580 GMT+05:30</statusDate><userId>u0121845</userId><comment>Document Metadata is correct.</comment></status><status><statusCode>934</statusCode><statusDate>2010-03-31 12:39:41.580 GMT+05:30</statusDate><userId>u0121845</userId><comment>Sent to LTC</comment></status><status><statusCode>932</statusCode><statusDate>2010-03-31 12:39:41.580 GMT+05:30</statusDate><userId>u0121845</userId><comment>Loaded to Novus</comment></status><status><statusCode>700</statusCode><statusDate>2010-03-31 12:39:41.580 GMT+05:30</statusDate><userId>u0121845</userId><comment>Document is deleted from OCA.</comment></status></ocaStatus>
I created following Indexes within the XML,
CREATE INDEX "OCA_DEV"."OCA_STATUS_CODE_INDEX" ON "OCA_DEV"."DOCUMENT_STATUS_XML" (EXTRACTVALUE('/ocaStatus/status/statusCode'));
CREATE INDEX "OCA_DEV"."OCA_STATUS_DATE_INDEX" ON "OCA_DEV"."DOCUMENT_STATUS_XML" (EXTRACTVALUE('/ocaStatus/status/statusDate'));
However the problem is that I will be having multiple status within each XML which violates the Indexing.
Is there any way I can still create the Indexes allowing multiple status values in each XML?
Thanks in advance.Hi,
You may want to store your document as a schema-based, object-relational XMLType to achieve that.
Then you'll be able to create indexes on the nested table used to store each "status" element.
Here's an example based on your sample document.
1) First, create and register a schema. The following is basic but sufficient here, let's call it "ocastatus.xsd" :
<?xml version="1.0"?>
<xsd:schema
targetNamespace="http://xmlbeans.apache.org/ocastatus"
xmlns="http://xmlbeans.apache.org/ocastatus"
elementFormDefault="qualified"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xdb="http://xmlns.oracle.com/xdb">
<xsd:element name="ocaStatus" type="OCASTATUS_TYPEType"/>
<xsd:complexType name="OCASTATUS_TYPEType" xdb:SQLType="OCASTATUS_TYPE">
<xsd:sequence>
<xsd:element name="status" type="STATUS_TYPEType" xdb:SQLName="status" maxOccurs="unbounded" xdb:SQLCollType="STATUS_V"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="STATUS_TYPEType" xdb:SQLType="STATUS_TYPE">
<xsd:sequence>
<xsd:element name="statusCode" type="xsd:double" xdb:SQLName="statusCode" xdb:SQLType="NUMBER"/>
<xsd:element name="statusDate" xdb:SQLName="statusDate" xdb:SQLType="VARCHAR2">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="userId" xdb:SQLName="userId" xdb:SQLType="VARCHAR2">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="comment" xdb:SQLName="comment" xdb:SQLType="VARCHAR2">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="100"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>Registering...
BEGIN
dbms_xmlschema.registerSchema(
schemaURL => 'ocastatus.xsd',
schemaDoc => xmltype(bfilename('XSD_DIR','ocastatus.xsd'), nls_charset_id('AL32UTF8')),
genTypes => true,
genTables => false
END;2) Table definition :
CREATE TABLE oca_status (
num NUMBER,
doc XMLTYPE
XMLTYPE doc STORE AS OBJECT RELATIONAL
XMLSCHEMA "ocastatus.xsd"
ELEMENT "ocaStatus"
VARRAY doc.xmldata."status" STORE AS TABLE oca_status_tab
CREATE INDEX oca_status_tab_idx1 ON oca_status_tab("statusCode");
CREATE INDEX oca_status_tab_idx2 ON oca_status_tab("statusDate");3) Inserting document...
INSERT INTO oca_status (num, doc)
VALUES(1, xmltype('<ocaStatus xmlns="http://xmlbeans.apache.org/ocastatus">
<status>
<statusCode>934</statusCode>
<statusDate>Wed Apr 07 16:05:53 GMT+05:30 2010</statusDate>
<userId>u0121845</userId>
<comment>Sent to LTC</comment>
</status>
<status>
<statusCode>934</statusCode>
<statusDate>Wed Apr 07 15:58:25 GMT+05:30 2010</statusDate>
<userId>u0121845</userId>
<comment>Sent to LTC</comment>
</status>
<status>
<statusCode>934</statusCode>
<statusDate>Wed Apr 07 15:54:02 GMT+05:30 2010</statusDate>
<userId>u0121845</userId>
<comment>Sent to LTC</comment>
</status>
<status>
<statusCode>750</statusCode>
<statusDate>2010-03-31 12:39:41.580 GMT+05:30</statusDate>
<userId>u0121845</userId>
<comment>Document Metadata is correct.</comment>
</status>
<status>
<statusCode>934</statusCode>
<statusDate>2010-03-31 12:39:41.580 GMT+05:30</statusDate>
<userId>u0121845</userId>
<comment>Sent to LTC</comment>
</status>
<status>
<statusCode>932</statusCode>
<statusDate>2010-03-31 12:39:41.580 GMT+05:30</statusDate>
<userId>u0121845</userId>
<comment>Loaded to Novus</comment>
</status>
<status>
<statusCode>700</statusCode>
<statusDate>2010-03-31 12:39:41.580 GMT+05:30</statusDate>
<userId>u0121845</userId>
<comment>Document is deleted from OCA.</comment>
</status>
</ocaStatus>')
);Verifying index use (XPath rewrite) ...
SQL> EXPLAIN PLAN FOR
2 SELECT * from oca_status x
3 WHERE existsnode(x.doc, '//status[statusCode="934"]') = 1;
Explicité.
SQL> SELECT * FROM TABLE(dbms_xplan.display);
PLAN_TABLE_OUTPUT
Plan hash value: 1840289382
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1 | 7938 | 4 (25)| 00:00:01 |
|* 1 | TABLE ACCESS FULL | OCA_STATUS_TAB | 1 | 2145 | 4 (0)| 00:00:01 |
| 2 | NESTED LOOPS | | 1 | 7938 | 4 (25)| 00:00:01 |
| 3 | SORT UNIQUE | | 4 | 8580 | 2 (0)| 00:00:01 |
| 4 | TABLE ACCESS BY INDEX ROWID| OCA_STATUS_TAB | 4 | 8580 | 2 (0)| 00:00:01 |
|* 5 | INDEX RANGE SCAN | OCA_STATUS_TAB_IDX1 | 4 | | 1 (0)| 00:00:01 |
| 6 | TABLE ACCESS BY INDEX ROWID | OCA_STATUS | 1 | 5793 | 1 (0)| 00:00:01 |
|* 7 | INDEX UNIQUE SCAN | SYS_C00243981 | 1 | | 0 (0)| 00:00:01 |
Predicate Information (identified by operation id):
1 - filter("NESTED_TABLE_ID"=:B1)
5 - access("statusCode"=934)
7 - access("NESTED_TABLE_ID"="X"."SYS_NC0000900010$")
Note
- dynamic sampling used for this statement
25 ligne(s) sélectionnée(s).
SQL> Regards. -
Problem in creating table maintenance generator for 61 fields in table
Hi Experts,
I am facing problem in creating a table maintenance genarator for a ZTABLE which has 61 fields
i am using below details whicle creating the TMG
in Maintenance screen
i am giving maintenance type as two step
Maint screen no overview screen 2
single screen 3
Dialog Data Transport details
Recording routine standard recording routine
but it is giving following error
screen SAPL<ZTABLE NAME> 0003 could not be generated
In DYNPFIELD_ATTR mandatory field LINE has no value
please let me know how to sort out these errors.
Is there any limit on the number of fields for which we can create table maintenance generetor.
Thanks a lot in advance
SudiptoHi Sudipto,
There is not limit to the number of fields of the Table which can be used in TMG for generation. But, from the usability point of view this will horrible.
I created a Z table and added 64 fields and was able to generate the TMG with the screens perfectly. So, I guess there should not be any problem.
Well, have a look at the Function Group. I guess the screen numbers are already used by some other screens. You can set the system to propose freely available screen numbers from the pool.
Also, check whether proper authorization is assigned or not.
And if nothing is working, you can degenerate all the generated screens and then can have a new regeneration of it.
Hope these tips will work.
Thanks,
Samantak -
Error while creating table maintainence generator !
Hi All ,
I want to create a table maintainence generator for table ZZFTLPNT . However I am getting the following error :
Typ Message text LTxt
Field ZZZFTLPNT-RRCTY shortened (new visible length: 000015)
Field ZZZFTLPNT-DRCRK shortened (new visible length: 000015)
Field ZZZFTLPNT-ROBJNR shortened (new visible length: 000009)
Field ZZZFTLPNT-SOBJNR shortened (new visible length: 000009)
Field ZZZFTLPNT-RRCTY shortened (new visible length: 000007)
Field ZZZFTLPNT-DRCRK shortened (new visible length: 000007)
Field ZZZFTLPNT-ROBJNR shortened (new visible length: 000004)
Field ZZZFTLPNT-SOBJNR shortened (new visible length: 000004)
Field ZZZFTLPNT-RRCTY shortened (new visible length: 000003)
Screen SAPLZZZFTLPNT 0001 could not be gene
Memory for screen LOAD is used up. bytes) is not
Please advise .Hi Pankaj
it is "Display/Maintenace allowed" and delivery class is 'A' .
Edited by: Ambar Patil on Dec 9, 2008 11:59 AM
Edited by: Ambar Patil on Dec 9, 2008 12:01 PM -
Problem while creating table maintenance generator using two step
Hello All,
I have created a Z table in which I have 7 fields, out of which 6 are character fields and 7th field is of type INT4
Now when I create the maintenance generator using TWO STEP approach, the 7th field i.e., of type INT4 is not available in the first screen (the table control screen). This screen only has 6 fields for display.
But when I click NEW ENTRIES button, I get the next screen which has all the 7 fields.
But if I create the maintenance generator using SINGLE STEP, all 7 fields are displayed in the first screen.
Please suggest. Let me know if you require some more explaination.
Thanks & Regards,
TarunHi Tarun,
Go to the layout and increase the size of the Screen. or at the screen attributes change the length and width values.
You know that initially the screen occupies default size only.
Hope this would serve your purpose.
Cheerz
Ram
Maybe you are looking for
-
I had to reboot my desktop computer to original manufacturers specifications and all my purchased Itune music was deleted from my computer. I didn't back up my itunes because they advertise they keep a record of your purchased music. I contacted It
-
ISE 1.2 Profiling with iPAD Mini and Chromebooks
Anyone run into issues with profiling device properly with iPAD mini and Chromebooks. Recent testing with customer shows that ISE was not able to identify the devices properly. We have a case opened with Cisco, they came out with a patch for Chrome
-
Image for add-on in main menu.
Dear All, I am facing a problem in loading the image for my add-on. when i run the source file the image is displayed in the main menu. But after converting the source file to ARD format the image is not getting displayed.Pls suggest some solution, R
-
A month ago I had some serious virus issues that effected iTunes. I had a computer repair tech come in and clean the computer. He was able to reinstall iTunes and restore most of the music files. Two problems were encountered during this process. 1)
-
Help needed- newbie trying to setup xerces XML pasrer
Hello all, I am new to Java and XML. I am trying to write a simple java program that will use the xerces parser and will read the XML file. I have installed xerces 2.8.0 and put in on a specific location on my hard drive. I also added the xercesImpl.