Setting gaps to specific values

I want to set gaps between object (rectangles) to specific values. I want to be able to enter a value rather than use gap tool, Ctrl+drag.
I'd also like to be able to lock this gap if that is in any way possible.
How do I do this?

Ok, yes, thank you Rob, that worked wonderfully. Do you know how it decides it anchoring point when it distributes? Right now it just moves the lower object down and the more right object to the right, while the objects in the upper left always stay put.

Similar Messages

  • How do you set an array of combo boxes to a specific value?

    I have an array of combo boxes that I would like to set to a specific value. When I tell my program to set them it only sets the combo box that I most recently changed and none of the others. 
    I've attached a small vi that demonstates the problem. 
    Thanks, 
    --Ben
    Solved!
    Go to Solution.
    Attachments:
    ComboBoxProblems.vi ‏12 KB

    Your property node is for only one combo box (you can see this on the label and also by double clicking to go to UI element).
    If you want to change all of them then either follow previous suggestion or create a property node for the array and not just one of the combo boxes.

  • Set the AVID DV codec specific values programaticly

    Hi,
    I am trying to change the AVID DV codec options settings from NTSC to PAL 420.
    i used the
    SCGetSettingsAsAtomContainer ( video_ci, &container );
    function to save the selected codec settings from the dialog.
    If i read them and check it with the dialog it show Avid Dv pal 420.
    if i start compressing it turns out to be ntsc again.
    and if i read the values back trouch the GetMediaSampleDescription(..) etc...
    It also shows its encoded with an NTSC setting.
    Please help.
    Cheers,
    Peter
    How can i set the Codec specific values.
    Can this be done by SCSetInfo
    if i load the saved compressor data with
    Please can anyone give me a hint were to search and what to do.
    Is there a way to save the compression settings, not the export settings.
    Thanks,
    Peter

    I tried to check what happens if i print the codec settings
    SCGetSettingsAsText( video_ci , &text );
    when i print for example the apple motion Jpeg codec it also shows the option settings
    if i print the Avid DV codec it does not show the the Pal/Ntsc settings.
    so it looks like an avid problem. HMMM or is there another way i could try to get all the settings for the selected codec.

  • How to set a field as mandatory when another field contains specific values

    Hi SAP Experts,
    Is it possible to set the Plant Specific Material Status field as mandatory when the DChain-spec. status field contains a specific set of values? Thanks.
    Regards,
    Kim Yong

    Hi Kim,
        I think you can achieve this using the validation tab in the field.Add a new rule for validation select the condition as test and in the value you have use formula according to your senario.Select the 'Stop execution'.This will make the field mandatory.
    I hope this helps...
    Naga

  • "Do you know a way to set counters automatically to a specific value when TC (i.e. zero) is reached?

    The inputs of my 6602 counter are two encoder signals, and I want
    to generate an output pulse every n-th increment of the counter.
    On the National Instruments Support Pages there exists a vi
    "Generate pulse every N position.llb" which promises to do that, but
    there are some problems:
    Here the counter is preset e.g. to 20 and then counts down to 2, 1, 0.
    When zero is reached, an output pulse is generated. This pulse now triggers
    the Z index channel in order to set the counter again to 20.
    However, this does only work, if both encoder signals are low when the
    Z pulse is active (or if both encoder signals are high or one is low and the
    other high, but not in
    all of these cases). The consequence is, that the
    example vi does only work with X1 encoders but not with X2 or X4 encoders.
    In the case of X2 or X4 encoders (or even in some cases of X1 encoders) it can
    happen that not both encoder signals are low when the Z pulse is active. Them
    the counter counts 2, 1, 0, -1, ... where -1 actually means a very large
    number because the counter values are unsigned. From then on no further output
    pulse is generated.
    To solve this problem there should be the possibility to set the counter to a
    specific value (here 20) when it reaches TC (i. e.), independently what the states of
    the encoder signals are. It would be best, when for this the Z pulse was not
    used, for many encoders do have a real Z pulse that also may be used.

    You are right in the case when the counter is to be reset
    in the presence of a reference mark.
    However the problem is to generate output pulses every N-th
    increment of for example a X4 encoder. Let N be 6. The
    counter counts 6, 5, 4, 3, 2, 1, 0. Then an output pulse
    is generated which is fed back to the Z channel. Let us assume
    that the Z index reload phase has been chosen correctly. Then
    the counter is reset to 6. It continues counting
    5, 4, 3, 2, 1, 0 and again an output pulse is generated.
    But now the channels A and B of the encoder (which were for example
    low at the time of the first output pulse) are in the inverted
    state (i.e. in the example high) and the Z index reload phase
    does no longer match. Therefore the counter is not reset and
    continues counting 4294967295, 4294967294, 4294967293, ...,
    which is the U32 form of -1, -2, -3, .... After that no more output
    pulses are generated since TC (=0) is no more reached.
    The problem is obvious. Only in the case of values N with N mod 4 = 0
    this approach can be successful. But then X4 evaluation of the encoder
    signals does not make sense, because a X1 evaluation does the same.
    In practice the situation is even worse. As theoretically expected
    the signal generation for X4 encoders never works when N mod 4 is
    unequal 0. If N mod 4 is 0 it only works sometimes. "Sometimes" means
    here randomly every fourth time, when the start phase of the encoder
    signals (which is determined randomly by the starting time of the
    software) matches the preselected Z index reload phase. Here it does
    not matter which Z index reload phase is preselected.
    Therefore the example program definitely cannot be used in combination
    with X4 or X2 encoders.
    There are a series of further arguments why we are not really satisfied by
    the approach proposed by the example vi to use the Z index channel in order to reset
    the counter. One is that we have encoders with real reference marks, which have
    to use the Z index channel themselves to reset the counter. Another is that we
    think that it is a rather complicated approach to reset a counter when TC (i.e. zero)
    is reached by checking the feedback fed Z index channel from time to time in intervals
    given by the internal clock of the 6602 and then reloading the counter value
    if certain conditions for the encoder channels are fulfilled.
    Therefore (and of course above all in order to deal with X4 and X2 encoders) it
    should be possible to reset a counter directly by hardware when TC (zero) is
    reached. We suppose the given 6602 hardware is supporting this, particularly
    because it is already able to react on TC (by generating output pulses) and because
    we think that something like that is already done in continous delayed pulse generation
    (and is only hidden in some code that is not accessible for LabVIEW users.)

  • Get rid of BarChart Legend and create a Horizontal Line on a specific value

    Hey,
    i'm working with BarCharts.
    1st Screen: I want to disable the Legend of my Barchart.
    http://imgur.com/wMo6Tfv,DRiNA9C
    Second Screen: I want to create a Line in my Barchart on a specific Value like 700 as seen on the screen.
    http://imgur.com/wMo6Tfv,DRiNA9C#1
    Is this Possible ? Also: For what object do i need to set the ID to change the bar's color. i've tried
    Chart barchart;
    barchart.setId("Chart");
    css:
    #barchart
    -fx-background-color: red;
    But it didn't work. Thanks!

    No, you're not missing anything; I had a temporary brain freeze. You can't add Nodes directly to an arbitrary region.
    So this makes it a bit harder. You need to add the line to the container in which your Chart is held, and of course that means you have to figure out the coordinates of the line relative to that container. To simplify it a bit, the axis has a scale property for converting from axis units to screen units, and also according to the css docs, the chart has a child with css class "chart-horizontal-zero-line". So one possible strategy is to grab that line and figure the change in coordinates needed from it. There's still work to do to figure the correct coordinates relative to the container, and if you want it to work with things moving around (such as when the user resizes the window), you need to do a bunch of binding.
    This seems to work:
    import java.util.Arrays;
    import java.util.List;
    import javafx.application.Application;
    import javafx.beans.binding.DoubleBinding;
    import javafx.beans.property.DoubleProperty;
    import javafx.beans.property.SimpleDoubleProperty;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
    import javafx.scene.Node;
    import javafx.scene.Scene;
    import javafx.scene.chart.CategoryAxis;
    import javafx.scene.chart.LineChart;
    import javafx.scene.chart.NumberAxis;
    import javafx.scene.chart.XYChart;
    import javafx.scene.control.Button;
    import javafx.scene.layout.AnchorPane;
    import javafx.scene.layout.BorderPane;
    import javafx.scene.layout.Region;
    import javafx.scene.shape.Line;
    import javafx.stage.Stage;
    import javafx.util.StringConverter;
    public class LineChartSample extends Application {
      @Override
      public void start(Stage stage) {
        stage.setTitle("Line Chart Sample");
        final CategoryAxis xAxis = new CategoryAxis();
        final NumberAxis yAxis = new NumberAxis();
        yAxis.setTickLabelFormatter(new StringConverter<Number>() {
          @Override
          public Number fromString(String string) {
            return Double.parseDouble(string);
          @Override
          public String toString(Number value) {
            return String.format("%2.2f", value);
        xAxis.setLabel("Month");
        final LineChart<String, Number> lineChart = new LineChart<String, Number>(
            xAxis, yAxis);
        lineChart.setTitle("Stock Monitoring, 2010");
        lineChart.setAnimated(false);
        final XYChart.Series<String, Number> series = new XYChart.Series<>();
        series.setName("My portfolio");
        final List<XYChart.Data<String, Number>> data = Arrays.asList(
        new XYChart.Data<String, Number>("Jan", 23),
            new XYChart.Data<String, Number>("Feb", 14),
            new XYChart.Data<String, Number>("Mar", 15),
            new XYChart.Data<String, Number>("Apr", 24),
            new XYChart.Data<String, Number>("May", 34),
            new XYChart.Data<String, Number>("Jun", 36),
            new XYChart.Data<String, Number>("Jul", 22),
            new XYChart.Data<String, Number>("Aug", 45),
            new XYChart.Data<String, Number>("Sep", 43),
            new XYChart.Data<String, Number>("Oct", 17),
            new XYChart.Data<String, Number>("Nov", 29),
            new XYChart.Data<String, Number>("Dec", 25));
        series.getData().addAll(data);
        final AnchorPane chartContainer = new AnchorPane();
        AnchorPane.setTopAnchor(lineChart, 0.0);
        AnchorPane.setBottomAnchor(lineChart, 0.0);
        AnchorPane.setLeftAnchor(lineChart, 0.0);
        AnchorPane.setRightAnchor(lineChart, 0.0);
        chartContainer.getChildren().add(lineChart);
        Button button = new Button("Show line");
        button.setOnAction(new EventHandler<ActionEvent>() {
          @Override
          public void handle(ActionEvent event) {
            final double lineLevel = 35;
            final Region chartRegion = (Region) lineChart
                .lookup(".chart-plot-background");
            final Line zeroLine = (Line) lineChart
                .lookup(".chart-horizontal-zero-line");
            final DoubleProperty startX = new SimpleDoubleProperty(0);
            final DoubleProperty endX = new SimpleDoubleProperty(0);
            final DoubleProperty y = new SimpleDoubleProperty(0);
            startX.bind(new DoubleBinding() {
                super.bind(chartRegion.boundsInParentProperty());
              @Override
              protected double computeValue() {
                double x = chartRegion.getBoundsInParent().getMinX();
                for (Node n = zeroLine.getParent().getParent(); n != chartContainer && n.getParent() != null; n = n.getParent()) {
                  x += n.getBoundsInParent().getMinX();
                return x;
            endX.bind(new DoubleBinding() {
                super.bind(chartRegion.boundsInParentProperty());
              @Override
              protected double computeValue() {
                double x = chartRegion.getBoundsInParent().getMaxX();
                for (Node n = zeroLine.getParent().getParent(); n != chartContainer && n.getParent() != null; n = n.getParent()) {
                  x += n.getBoundsInParent().getMinX();
                return x;
            y.bind(new DoubleBinding() {
                super.bind(chartRegion.boundsInParentProperty(),
                    yAxis.scaleProperty(), zeroLine.startYProperty());
              @Override
              protected double computeValue() {
                double y = zeroLine.getStartY() + lineLevel * yAxis.getScale();
                for (Node n = zeroLine.getParent().getParent(); n != chartContainer && n.getParent() != null; n = n.getParent()) {
                  y += n.getBoundsInParent().getMinY();
                return y;
            Line line = new Line();
            line.startXProperty().bind(startX);
            line.endXProperty().bind(endX);
            line.startYProperty().bind(y);
            line.endYProperty().bind(y);
            chartContainer.getChildren().add(line);
        BorderPane root = new BorderPane();
        root.setCenter(chartContainer);
        root.setTop(button);
        Scene scene = new Scene(root, 800, 600);
        lineChart.getData().add(series);
        stage.setScene(scene);
        stage.show();
      public static void main(String[] args) {
        launch(args);
    }

  • Material specific value contract

    Hi SAP Gurus,
    I have a problem while creating material specific value contract WK2. After creating the value contract for INR 50000 and doing the neccessary settings in item category WKN, i created a relaease order with value as INR 500.
    I can see the release order in the documnet flow of the contract, but in the contract overview screen value released is not reflecting, which i am expecting as 50000-500 = 49500. So the value released should reflect as INR 500.
    Please correct me if i am wrong.
    Regards
    S R Sahoo

    Dear Friend,
    Thanks for your reply. I have already done the following settings.
    In VTAA I have already set the Cont. item copy mode to B for both
    WK2 to WA and WK2 to OR.
    Please suggest further.
    Regards,
    S R Sahoo

  • Default "Recoverable Tax" account - cost center segment to specific value

    Dear all,
    I have tried couple of days to see how to use subledger accounting setup to default cost center of recoverable tax account (recoverable tax account - cost center segment to specific value which is based on the cost center of invoice distribution), however it is not succesful.
    I think might be some of the setup is wrong, please see below my setup steps:
    1) Set up Account Derivation Rules
    Copy rule code AP_INVOICE_DIST to T_AP_INVOICE_DIST with adding a source ='Recoverable tax", condition = Invoice Distribution Account is not null
    2) Setup Journal Lines Definition
    3) Setup Accounting Accounting Definition
    Please advice.

    Madhu,
    I did some investigation too and it looks like this is only way i can do this.
    Do you think of any User Exit name, which i can use it here?
    Thank you and appreciate your help.

  • EHS: Set up Table-based Value assignment Error.

    Hi all,
    We are customizin Basic Data & Tools and when trying to set table based assignments (table TCG11_VAI; program RC1TCG11_02) we are getting no entries in the table. The message shown is always <i>"0 unchanged entries, 0 new entries, 0 entries deleted"</i> independant on the entry criteria
    The problem is that we can create those entries manually but it will be endless
    Has this happened to anyone before? Any idea?
    Many thanks and regards,
    Alberto

    Hi all,
    We have just find the solution.
    Just for your information the problem was that the IMG activity "Adopt
    Standard Specification Database" was executed but not working properly
    because no data can be copied from client 000. Then when executing "Set
    Up table Based Value Assignment" no entries were made in the table. We
    have just change the client, execute "Adopt Standard Specification
    Database" and then "Set Up table Based Value Assignment" and now is
    working properly
    Alberto

  • Update record to specific value or to null

    Hello.
    We have two tables. Both have the same attribute. Update sentence look if attribute has the same value in both tables. If the value is the same, another attribute is updated to specific value in one table.
    Now i want to update attribute in all records. But if the both tables haven't got the same value, attribute in record should be updated to null.
    For now update looks like:
    update tableA set att1 = att2
    where att3 = value2 and att4 IN (select att4 from tableB where att2 = value2);
    Any idea?
    I hope i explained the problem properly.
    Thanks.

    Like..
    SQL> select * from test1;
    C1         C2
    c1          1
    SQL> select * from test2;
    C1        C22        C33
    c2         11        100
    c1          1        100
    SQL> update test2 t2
      2  set c33 = decode(c22,(select max(c2) from test1 t1 where t1.c1=t2.c11),0,null);
    2 rows updated.
    SQL> select * from test2;
    C1        C22        C33
    c2         11
    c1          1          0                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • .Specific.Value syntax no longer works in 8.81????

    ".Specific.Value" syntax no longer works in 8.81????
    We are upgrading an addon for version 8.81 that currently works well in 8.8 and have noticed the following;
            Dim oEdit As SAPbouiCOM.EditText
            Dim oItem As SAPbouiCOM.Item, sValue As String
         'This line worked in previous versions but fails in 8.8.1
         sValue = oForm.Items.Item("cEditText").Specific.Value
         'This works in 8.81 as well as previous versions.
                         oItem = oForm.Items.Item("cEditText")
                         oEdit = oItem.Specific
                         sValue = oEdit.Value
    Has anyone else encountered this? Have I got something set up wrong or is the ".Specific.Value" syntax no longer supported.
    Thanks for any comments on this.
    Mel

    Siva,
    Yes the code you provided also works. Thanks.
    I don't see why SAP made a change that causes working code to now fail. We are supporting a large app that has used the syntax in many different places and it will be a pain to go through and make the changes.
    Does anyone know if this was intentional? Will it possibly be restored in a future release?

  • Problem setting a provider specific property : JMS adapter

    Hi Experts:
    I need to set a provider specific property as required by the third party in a IDoc to JMS scenario.
    The property name starts with JMS_ and is offcourse a property specific to the JMS provider.
    The way I am setting it is I have declared a Additional JMS message property by the same name as desired by the third party say
    JMS_XXX
    and then using the DynamicConfigurationBean I assign a value to this in the reciever channel.
    The problem that we have observed is, all other properties are set as desired, only this one for which the name starts with JMS_ is not set correctly.
    Is it possible to set such a provider specific property using XI or not?

    Hi Amol,
    Adapter-Specific Message Properties
    ·        To store adapter attributes in the message header of the XI message, select Set Adapter-Specific Message Properties.
    ·        To apply the following attributes in XI message headers, set the corresponding indicators:
           Name                                           Technical Name
    JMS Message Correlation ID               DCJMSCorreleationID
    JMS Message Delivery Mode               DCJMSDeliveryMode
    JMS Message Destination                   DCJMSDestination
    JMS Message Expiration                     DCJMSExpiration
    JMS Message ID                                DCJMSMessageID
    JMS Message Priority                         DCJMSPriority
    JMS Message Redelivered Flag            DCJMSRedelivered
    JMS Message ReplyTo Destination      DCJMSReplyTo
    JMS Message Time Stamp                   DCJMSTimestamp
    JMS Message Type                              DCJMSType
    Used JMS Message Selector                 DCJMSMessageSelector
    Used JMS Message Queue                    DCJMSMessageQueue
    JMS User                                                DCJMSUser
            If you want to set additional JMS message attributes, select Specify Additional JMS Message Properties (10 Maximum).
    ·        In the table, enter the names of the JMS message properties whose values are to be included in the message header of the XI message.
    The technical names of the additional attributes are DCJMSMessageProperty0, DCJMSMessageProperty1, ..., DCJMSMessageProperty9.
    You can enter more than 10 properties in the table, but only the first 10 are taken into account.
    The attribute namespace for the adapter is http://sap.com/xi/XI/System/JMS.
    if found worth pls do the req
    Thanx
    Sampath

  • OSB Setting SOAP Body Id value in proxy service when calling out to another service

    I have a proxy service deployed in OSB.  I need to set the Id attribute value on the SOAP Body element to a specific value prior to invoking the business service.
    In the service callout I currently has  "Configure Payload Document" selected.
    Do I need to do an XPath / XQuery transformation in an Insert or Update message processing action in a prior step of the message flow before the callout to the business service?

    Suppose below is your request you are passing to Business Service :
    <math:input
    xmlns:math="http://www.math.org">
        <math:inp1>100</math:inp1>
        <math:inp2>1</math:inp2>
        </math:input>
    Now before passing it to BS you need to change the value of inp2 to let say 200.
    So just before service callout , add a replace action
    Replace [ node contents ] of [ ./math:input/math:inp2 ] in [ body ] with [ 200 ]
    Your new request will become:
    <math:input
    xmlns:math="http://www.math.org">
    <math:inp1>100</math:inp1>
    <math:inp2>200</math:inp2>
    </math:input>
    Hope this helps.
    Regards,
    Karan
    Oracle Fusion Middleware Blog

  • Delete a node containing a child node with specific value

    Hello,
    I wanted to know how to delete a node which contains specific value in one of its child node.
    Here is the xml file
    <?xml version="1.0" encoding="UTF-8"?>
    <rows>
         <ROW>
              <part_num_ref ID="100124">1</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">2</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">3</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">4</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">5</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">6</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">7</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">8</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">9</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">10</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">11</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">12</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">13</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">14</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">15</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">16</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
         <ROW>
              <part_num_ref ID="100124">17</part_num_ref>
              <part_sht_nam_ref ID="100125">0</part_sht_nam_ref>
              <part_country ID="100026">0</part_country>
              <tot_cost__rtd ID="102281">0</tot_cost__rtd>
              <tot_cost__demo ID="102282">0</tot_cost__demo>
              <tot_cost__tra ID="102283">0</tot_cost__tra>
              <tot_cost__coor ID="102284">0</tot_cost__coor>
              <tot_cost__sprt ID="102285">0</tot_cost__sprt>
              <tot_cost__mng ID="102286">0</tot_cost__mng>
              <tot_cost__oth ID="102287">0</tot_cost__oth>
              <tot_cost ID="100135">0</tot_cost>
              <tot_rcpt ID="102016">0</tot_rcpt>
              <tot_grant ID="100136">0</tot_grant>
         </ROW>
    </rows>
    I would like to delete one of the node <ROW> which contains the value 1 for the child node <part_num_ref >
    Is it possible?
    Thanks in advance for your answers.
    Regards,
    Stessy Delcroix

    The following is a possibility on database version 10.2.x (what database version are you using?):
    Example from XMLDB Developers Guide 10.2
    Example 4-26 Deleting LineItem Element Number 222
    SELECT extract(OBJECT_VALUE,
                   '/PurchaseOrder/LineItems/LineItem[@ItemNumber="222"]')
      FROM purchaseorder
      WHERE existsNode(OBJECT_VALUE,
                       '/PurchaseOrder[Reference="AMCEWEN-20021009123336171PDT"]')
            = 1;
    EXTRACT(OBJECT_VALUE,'/PURCHASEORDER/LINEITEMS/LINEITEM[@ITEMNUMBER="222"]')
    <LineItem ItemNumber="222">
      <Description>The Harder They Come</Description>
      <Part Id="953562951413" UnitPrice="22.95" Quantity="1"/>
    </LineItem>
    1 row selected.
    UPDATE purchaseorder
      SET OBJECT_VALUE =
          deleteXML(OBJECT_VALUE,
                    '/PurchaseOrder/LineItems/LineItem[@ItemNumber="222"]')
      WHERE existsNode(OBJECT_VALUE,
                       '/PurchaseOrder[Reference="AMCEWEN-20021009123336171PDT"]')
            = 1;
    SELECT extract(OBJECT_VALUE,
                   '/PurchaseOrder/LineItems/LineItem[@ItemNumber="222"]')
      FROM purchaseorder
      WHERE existsNode(OBJECT_VALUE,
                       '/PurchaseOrder[Reference="AMCEWEN-20021009123336171PDT"]')
            = 1;
    EXTRACT(OBJECT_VALUE,'/PURCHASEORDER/LINEITEMS/LINEITEM[@ITEMNUMBER="222"]')
    1 row selected.

  • Override web.xml With Server Specific Values

    Not sure if here or the OC4J/J2EE forum is most appropriate place for this question:
    We're currently working on migrating from the old jserv setup to 9.0.4 app server with OC4J. We have the infrastructure installed and are managing the application through Enterprise Manager. In my web.xml file I provide initialization parameters to one of my servlets using something similar to the following:
    <servlet>
    <servlet-name>util.GlobalPropertyManager</servlet-name>
    <servlet-class>util.GlobalPropertyManager</servlet-class>
    <init-param>
    <param-name>mhris.batch.outputdir</param-name>
    <param-value>d:/dev/java/mhris/defaultroot/batch/</param-value>
    </init-param>
    </servlet>
    Now, this directory path I've provided is only good on my local workstation. When I deploy to my UNIX production servers, I need to override this with a valid path depending on the server being deployed to (no, they don't all have the same directory setup, yeah it's a pain). These servers include our production boxes, development server, test, training, etc.
    Currently under JSERV, I provide server specific values in the Global Init Parameters section of my property file (don't remember why we didn't use the Servlet Init Parameters property instead). This works very well since this file is not touched when we land updates, so the values are set once for each server.
    Under OC4J, I understand that I can override the values in web.xml by using an orion-web.xml file BUT it appears that this file resides in the WAR I deploy, so each server will get the same orion-web.xml rather than maintaining its own set of values.
    Is there another .xml file I can use to provide these initalization parameters? global-web-applications.xml looked promising but I wasn't completely sure I could put values for my application in it or where exactly they should go (ie. inside the existing <web-app> section or if I should create a second one specifically for my app).
    Any ideas or will I have to reploy a different orion-web.xml file to each of my servers?
    Appreciate the assistance,
    Michael

    Michael,
    First, I would just modify the web.xml during each deployment.
    Second, I would recommend using the same relative path with the web-app context. Then, you can use the Servlet API to retrive the real path of the web-app context.
    I don't think it is necessary to use orion-web.xml or other properties files.

Maybe you are looking for