Bidirectional binding between DoubleProperty and ObjectProperty Double

Is there a way to bind a DoubleProperty and an ObjectProperty<Double> in a bidirectional manner?
For a unidirectional solution, one could utilize low-level binding api, but I couldn't find a way to achieve the same for bidirectional binding.

DoubleProperty implements Property<Number>, so you can bind bidirectionally between DoubleProperty and ObjectProperty<Number>, but not (directly) between DoubleProperty and ObjectProperty<Double>, as far as I can see.
One way is just to use listeners:
final DoubleProperty dProp = new SimpleDoubleProperty();
  final ObjectProperty<Double> propD = new SimpleObjectProperty<>();
  propD.addListener(new ChangeListener<Number>() {
      @Override
      public void changed(ObservableValue<? extends Number> observable,
          Number oldValue, Number newValue) {
        if (dProp.getValue() != newValue) {
          dProp.setValue(newValue);
  dProp.addListener(new ChangeListener<Number>() {
      @Override
      public void changed(ObservableValue<? extends Number> observable,
          Number oldValue, Number newValue) {
        if (propD.get() != newValue) {
          propD.set((Double) newValue);
And another way, which is less code but a bit obtuse and less efficient, is to use an intermediate StringProperty and bind with the appropriate StringConverters:
final StringProperty sProp = new SimpleStringProperty();
  Bindings.bindBidirectional(sProp, dProp, new NumberStringConverter());
  Bindings.bindBidirectional(sProp, propD, new DoubleStringConverter());
I don't see another way: if you can arrange for your ObjectProperty<Double> to be an ObjectProperty<Number>, that would obviously be best. I don't see a more general way to bind bidirectionally between Property<T> and Property<S> when one of S, T is not a String.

Similar Messages

  • Binding between Task and method dissappears

    The binding between task and method is dissappearing .
    I tried creating a new task altogether but still not working
    kindly help
    Edited by: kittu reddy on May 6, 2008 3:19 PM

    I have Zmethod and i have done binding between the task and the method and
    Task and workflow..
    Binding between Task  and work flow doesnt seem to Disappear
    but the binding between Task and the method kept on disappearing
    I have a Zmethod to Bus2091(delagated to Zbus2091)
    with an import parameter and an export parameter
    and now when creating the task and assigning the method the container elements of method are transferred to Task
    and next i wen to binding eeditor and generated automatic binding:
    From task to method
    and method to task
    with out errors and now on clicked green tick mark of the binding editor and saved the Task and now on checking back the binding editor
    i find the binding disppearead

  • "Require authenticated binding between directory and clients" missing

    A new install of 10.6, upgraded to 10.6.4 Server does not show the option "Require authenticated binding between directory and clients" under the Open Directory - Settings - Policies - Binding tab. I do see the "Enable authenticated directory binding" option. Also, the terminal command sudo slapconfig -setmacosxodpolicy -binding required does work as a workaround.
    This option is not present in both Server Admin on the server itself and one client machines I'm using to manage the server.
    Is there a way to get the graphical button to become visible?
    Thank you in advance.

    This Option is no longer available in the GUI.
    See Apple Support Article HT4068.

  • Binding Between CFForms

    Hi I hope someone can help me here - thisis driving me nuts
    I have two forms one one page - reason being that I need to
    use a certain widget provided to me by a third party.
    My code is
    ===================================================
    this form calls the thrid party widget and returns data to
    the input field - works fine no probs
    ===================================================
    <cfform name="add" >
    <cfinput type="text" name="housenumbers" message="enter
    housenumber" width=200 label="housenumber" value="hurrah"
    validateat="onBlur" validate="noblanks" required="yes">
    <SCR1PT LANGUAGE=JAVA$CR1PT
    SRC="htp://www.xxxxxxxxxxxxxxxxxxxxx.aspx?id=3333333333333333333318B78987393597539737"></ SCR1PT>
    </cfform>
    =============================================
    this form essentially needs to take the dataform the form
    above and populate the housenumber field - but doesn't
    cfform flash is used for the second form as there is more
    user "interface" required the intention of the first form is for it
    to be hidden once this is working.
    the alternative is to try to call the JS function from with
    the second CFForm but since the format flash only reads
    actionscript this may be a bit trickier.
    =============================================
    <cfform name="address" format="flash">
    <cfinput type="text" name="housenumber" message="enter
    housenumber" value="" width=200 label="housenumber" tooltip="df"
    required="yes">
    <cfinput name="addln1" type="text" required="yes"
    message="enter line 2" width=200 label="addln1">
    <cfinput name="addln2" type="text" required="yes"
    message="enter line 2" width=200 label="addln2">
    <cfinput name="town" type="text" required="yes"
    message="enter town" width=200 label="town">
    <cfinput name="county" type="text" required="yes"
    message="enter county" width=200 label="county">
    <cfinput name="postcode" type="text" required="yes"
    message="enter postcode" width=200 label="postcode">
    </cfform>
    any help would be gratefully appreciated.
    regards

    I have Zmethod and i have done binding between the task and the method and
    Task and workflow..
    Binding between Task  and work flow doesnt seem to Disappear
    but the binding between Task and the method kept on disappearing
    I have a Zmethod to Bus2091(delagated to Zbus2091)
    with an import parameter and an export parameter
    and now when creating the task and assigning the method the container elements of method are transferred to Task
    and next i wen to binding eeditor and generated automatic binding:
    From task to method
    and method to task
    with out errors and now on clicked green tick mark of the binding editor and saved the Task and now on checking back the binding editor
    i find the binding disppearead

  • How to implement BINDING between drawing shapes and properties?

    See this background info:
    Can we have BINDING between drawing shapes and properties?
    This needs more specific info. My application reads a number of XML files, and places the data in an Excel worksheet. Let's say that there are 20 XML files, the app creates 20 lower tabs (spreadsheets) named: "Item 1", "Item 2", ...,
    "Item 20".
    That is the current version. I am told by the users, however, that in some cases there are some XML files which create more than 1 Excel lower tab.  For example, the file: "Items 8-11.xml" needs to fill tabs 8, 9, 10 and 11.
    In that particular case the user will modify the default map (a 45-degree diagonal, equivalent to the
    identity function F(x) = x), by clicking around. The resulting new map will look as follows:
    Since the number of XML files does not change, the number of rows is constant. However, each time a black square is moved from its canonical (45-degree) location, a spreadsheet becomes "orphan" and therefore the application must create a new Excel
    lower tab (which is a grid column). IOW: The number of columns keeps on growing to the right.
    List<Model>
    I figure that (as opposed to DataGrids which grow and shrink vertically, which each Model being 1 row) this thing should use the column as fundamental Model.
    Before running the main app (the XML file reading procedures), the user will select a menu item named "Configure XML to Excel Mapping" and an interface similar to the image above will be shown.
    In addition to the property binding, which has been discussed, how should I implement the drawing and erasing of black and white squares? I guess I will need some sort of "ConvertTo" bidirectional bridge from/to boolean and square drawing?

    You lost me with the xml file and the tab and the wossname to the thingummybob.
    I don't follow the explanation, sorry.
    The way to show stuff like that isn't dependent on how the data is stored where though.
    I probably wouldn't draw them, as such.
    I'd probably just make each a usercontrol which bound the fill brush of a rectangle for the black white bit and used a border for the outline.
    To simplify that:
    <Grid> <Border>
    <Rectangle Fill={Binding FillBrush}"/>
    </Border>
    </Grid>
    FillBrush
    Would be a public property solidcolorbrush exposed from your cellvm
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Media;
    using GalaSoft.MvvmLight;
    namespace wpf3
    public class CellVM : ViewModelBase
    private SolidColorBrush fillBrush;
    public SolidColorBrush FillBrush
    get { return fillBrush; }
    set
    fillBrush = value;
    RaisePropertyChanged();
    You can then have some logic somewhere which tells that viewmodel to show black or white fill.  Which would be that converter bridge thingy equivalent.  This thing is true then FillBrush = whiteBrush else FillBrush = blackBrush.
    You could probably do it with just rectangle, lose the border and set the Stroke on the rectangle.
    The stroke is the outside line round a rectangle ( or any shape).
    https://msdn.microsoft.com/en-us/library/system.windows.shapes.shape.stroke(v=vs.110).aspx
    And you would of course do other stuff like sizing the usercontrol and arranging an list in a list as I explained in your other thread.
    Oh.................
    But to answer the question in the title.
    Yes you can bind all sorts of things including the point making up a polygon, brush used to draw the line and all sorts.  You could even do flashing cells if you wanted.
    Hope that helps.
    Recent Technet articles: Property List Editing;
    Dynamic XAML

  • What 's the difference between quote ' and double quote "?

    what's the difference between quote' and double quote "?
    when we use each one?
    Exemple of use of each case?

    'c' is a char, ie. a primitive type representing a single character
    "c" is an instance of the String class length 1.

  • Difference between value and binding ?

    hello
    I am afraid I am not clear on difference between value and binding of a component?
    I will appreciate if you supply an explanation.
    kind regards

    Binding? Aren't you talking about JSF? That term doesn't occur in JSP world.

  • Difference between 8X Super Drive and 8X 'Double Layer' Superdrive?

    Can someone advise me the difference, if any, between 8X Super Drive and
    8X 'Double 'Layer' Super Drive. I often see both used in advertisments for
    Apple Computers. Thanks.

    DVDs can be single-layer (4.7 GB) or dual-layer (8.5 GB). All drives can read both types, and burn single-layer, but only a dual-layer drive can burn dual layer. Macs have all shipped with dual-layer drives for several years. I think all drives currently sold are dual-layer, so it may just be an omission in some of the ads, unless they are for older equipment.

  • Distinguishing between single and double left click

    Hello there,
    Is it possible to handle a single click and a double click separately?
    I mean to ignore a single click handling, when you double click.
    Thank you

    I agree with bazja01 except I would make a small change as shown below:
    private class MouseListener extends MouseAdapter {
       public void mouseClicked(MouseEvent e) {
          if (e.getClickCount() > 1) {        // change from ==2 to >1
              // do double click process
          } else {
              // do single click
    }This is because for some unknown reasons, on my Windows 98SE, the click count jumped from 1 to 3 on a double click and I wasted a lot of time trying to figure out why my code using ==2 didn't work.
    V.V.

  • JDeveloper Error: White spaces are required between publicId and systemId.

    I'm using JDeveloper 10.1.3.1.0.
    This error is occurring in a BPEL process project.
    With one particular web service I have, adding a Partner Link to the BPEL generates the following compile error:
    Error: White spaces are required between publicId and systemId.
    I can add Partner links from other web services and the BPEL will compile fine. The main difference I can see is that this web service supports WS-Addressing.
    I have found one other reference to a similar (but not exactly the same) problem elsewhere in these forums but the fix is not really applicable. All of the wsdl files pass the "Validate WSDL" operation, and I don't see anything wrong with them.
    When the error occurs and I select "Go To Source" it points back to the first line of the bpel file.
    Can anyone help me out on this?
    This is the wsdl for the web service, wsademo.wsdl:
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions name="wsademo"
    targetNamespace="http://localhost:11001/wsademo.wsdl"
    xmlns:tns="http://localhost:11001/wsademo.wsdl"
    xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
    xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
    xmlns:ns="http://localhost:11001/wsademo.wsdl"
    xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap12/"
    xmlns:MIME="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:DIME="http://schemas.xmlsoap.org/ws/2002/04/dime/wsdl/"
    xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/"
    xmlns="http://schemas.xmlsoap.org/wsdl/">
    <types>
    <schema targetNamespace="http://localhost:11001/wsademo.wsdl"
    xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
    xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
    xmlns:ns="http://localhost:11001/wsademo.wsdl"
    xmlns="http://www.w3.org/2001/XMLSchema"
    elementFormDefault="unqualified"
    attributeFormDefault="unqualified">
    <import namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
    <import namespace="http://www.w3.org/2003/05/soap-encoding"/>
    <!-- operation request element -->
    <element name="wsademoResult">
    <complexType>
    <sequence>
    <element name="out" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    </sequence>
    </complexType>
    </element>
    <!-- operation request element -->
    <element name="wsademo">
    <complexType>
    <sequence>
    <element name="in" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    </sequence>
    </complexType>
    </element>
    <!-- operation response element -->
    <element name="wsademoResult">
    <complexType>
    <sequence>
    <element name="out" type="xsd:string" minOccurs="0" maxOccurs="1" nillable="true"/>
    </sequence>
    </complexType>
    </element>
    </schema>
    </types>
    <message name="wsademoResult">
    <part name="parameters" element="ns:wsademoResult"/>
    </message>
    <message name="wsademo">
    <part name="parameters" element="ns:wsademo"/>
    </message>
    <message name="wsademoResult">
    <part name="parameters" element="ns:wsademoResult"/>
    </message>
    <message name="wsademoHeader">
    <part name="MessageID" element="wsa:MessageID"/>
    <part name="RelatesTo" element="wsa:RelatesTo"/>
    <part name="From" element="wsa:From"/>
    <part name="ReplyTo" element="wsa:ReplyTo"/>
    <part name="FaultTo" element="wsa:FaultTo"/>
    <part name="To" element="wsa:To"/>
    <part name="Action" element="wsa:Action"/>
    </message>
    <portType name="wsademoPort">
    <operation name="wsademoResult">
    <documentation>accepts a string value from a relayed response</documentation>
    <input message="tns:wsademoResult"/>
    </operation>
    <operation name="wsademo">
    <documentation>echos a string value and relays the response to the wsa replyTo address (if present)</documentation>
    <input message="tns:wsademo"/>
    <output message="tns:wsademoResult"/>
    </operation>
    </portType>
    <binding name="wsademo" type="tns:wsademoPort">
    <SOAP:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="wsademoResult">
    <SOAP:operation soapAction="urn:wsademo/wsademoPort/wsademoResult"/>
    <input>
    <SOAP:body parts="parameters" use="literal"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="Action"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="To"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="FaultTo"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="ReplyTo"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="From"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="RelatesTo"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="MessageID"/>
    </input>
    </operation>
    <operation name="wsademo">
    <SOAP:operation soapAction="urn:wsademo/wsademoPort/wsademo"/>
    <input>
    <SOAP:body parts="parameters" use="literal"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="Action"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="To"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="FaultTo"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="ReplyTo"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="From"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="RelatesTo"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="MessageID"/>
    </input>
    <output>
    <SOAP:body parts="parameters" use="literal"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="Action"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="To"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="FaultTo"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="ReplyTo"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="From"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="RelatesTo"/>
    <SOAP:header use="literal" message="tns:wsademoHeader" part="MessageID"/>
    </output>
    </operation>
    </binding>
    <service name="wsademo">
    <documentation>demonstrates WS-Addressing capabilities</documentation>
    <port name="wsademo" binding="tns:wsademo">
    <SOAP:address location="http://localhost:11001"/>
    </port>
    </service>
    </definitions>
    This is the wsdl that is generated by JDeveloper that contains the PartnerLinks and refernce back to the original wsdl file, wsademoRef.wsdl:
    <definitions
    name="wsademo"
    targetNamespace="http://localhost:11001/wsademo.wsdl"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:tns="http://localhost:11001/wsademo.wsdl"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    >
    <import namespace="http://localhost:11001/wsademo.wsdl" location="wsademo.wsdl"/>
    <plnk:partnerLinkType name="wsademoPort_PL">
    <plnk:role name="wsademoPort_Role">
    <plnk:portType name="tns:wsademoPort"/>
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>
    And finally the is the BPEL, WSAtest3.bpel:
    <?xml version="1.0" encoding="UTF-8"?>
    <!--
    Oracle JDeveloper BPEL Designer
    Created: Thu Oct 05 15:27:12 GMT-08:00 2006
    Author: wstielau
    Purpose: Synchronous BPEL Process
    -->
    <process name="WsaTest3" targetNamespace="http://xmlns.oracle.com/WsaTest3"
    xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:ns1="http://localhost:11001/wsademo.wsdl"
    xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:ns2="http://localhost:80/Service.wsdl"
    xmlns:client="http://xmlns.oracle.com/WsaTest3"
    xmlns:bpelx="http://schemas.oracle.com/bpel/extension/"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc">
    <!--
    PARTNERLINKS
    List of services participating in this BPEL process
    -->
    <partnerLinks>
    <!--
    The 'client' role represents the requester of this service. It is
    used for callback. The location and correlation information associated
    with the client role are automatically set using WS-Addressing.
    -->
    <partnerLink name="client" partnerLinkType="client:WsaTest3"
    myRole="WsaTest3Provider"/>
    <partnerLink name="wsademo" partnerLinkType="ns1:wsademoPort_PL"
    myRole="wsademoPort_Role" partnerRole="wsademoPort_Role"/>
    </partnerLinks>
    <!--
    VARIABLES
    List of messages and XML documents used within this BPEL process
    -->
    <variables>
    <!-- Reference to the message passed as input during initiation -->
    <variable name="inputVariable" messageType="client:WsaTest3RequestMessage"/>
    <!-- Reference to the message that will be returned to the requester-->
    <variable name="outputVariable"
    messageType="client:WsaTest3ResponseMessage"/>
    <variable name="Invoke_1_wsademo_InputVariable" messageType="ns1:wsademo"/>
    <variable name="Invoke_1_wsademo_OutputVariable"
    messageType="ns1:wsademoResult"/>
    </variables>
    <!--
    ORCHESTRATION LOGIC
    Set of activities coordinating the flow of messages across the
    services integrated within this business process
    -->
    <sequence name="main">
    <!-- Receive input from requestor. (Note: This maps to operation defined in WsaTest3.wsdl) -->
    <receive name="receiveInput" partnerLink="client" portType="client:WsaTest3"
    operation="process" variable="inputVariable" createInstance="yes"/>
    <!-- Generate reply to synchronous request -->
    <assign name="Assign_1">
    <copy>
    <from variable="inputVariable" part="payload"
    query="/client:WsaTest3ProcessRequest/client:input"/>
    <to variable="Invoke_1_wsademo_InputVariable" part="parameters"/>
    </copy>
    </assign>
    <invoke name="Invoke_1" partnerLink="wsademo" portType="ns1:wsademoPort"
    operation="wsademo" inputVariable="Invoke_1_wsademo_InputVariable"
    outputVariable="Invoke_1_wsademo_OutputVariable"/>
    <assign name="Assign_2">
    <copy>
    <from variable="Invoke_1_wsademo_OutputVariable" part="parameters"/>
    <to variable="outputVariable" part="payload"
    query="/client:WsaTest3ProcessResponse/client:result"/>
    </copy>
    </assign>
    <reply name="replyOutput" partnerLink="client" portType="client:WsaTest3"
    operation="process" variable="outputVariable"/>
    </sequence>
    </process>
    -Wayne Stielau
    Open Text Corporation
    Irvine, CA

    I have discovered two issues.
    1. JDeveloper does not seem to like the SOAP 1.2 envelope and encoding namespaces. Is this a known limitation? Changed them to 1.1.
    2. JDeveloper does not like the double definition of wsaDemoResult.
    When these two items are changed, the bpel compiles clean. Now I've got to get the message header to populate correctly. There are no values assigned, only namespace definitions. This is the SOAP packet that is received at the web service.
    <?xml version="1.0" encoding="UTF-8"?>
    <env:Envelope
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <env:Header>
    <MessageID xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
    <From xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
    <RelatesTo xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
    <Action xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
    <ReplyTo xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
    <To xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
    <FaultTo xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
    </env:Header>
    <env:Body>
    <wsademo xmlns="http://localhost:11001/wsademo.wsdl">
    <in xmlns="">hello</in>
    </wsademo>
    </env:Body>
    </env:Envelope>

  • What's difference between ASC and DESC index

    1 select count(*)
    2* from big_emp e where hiredate >= to_date('1980-01-01', 'YYYY-MM-DD') and hiredate <= to_date('1983-12-31', 'YYYY-MM-DD')
    COUNT(*)
    11971
    SQL> create index i_big_emp_hiredate on big_emp(hiredate);
    Index created.
    SQL> set autot trace
    SQL> select empno, ename, hiredate
    2 from big_emp e where hiredate >= to_date('1980-01-01', 'YYYY-MM-DD') and hiredate <= to_date('1983-12-31', 'YYYY-MM-DD') ;
    11971 rows selected.
    Execution Plan
    | Id | Operation | Name | Rows | Bytes | Cost |
    | 0 | SELECT STATEMENT | | 11766 | 218K| 19 |
    |* 1 | TABLE ACCESS FULL| BIG_EMP | 11766 | 218K| 19 |
    SQL> drop index i_big_emp_hiredate;
    Index dropped.
    SQL> create index i_big_emp_hiredate on big_emp(hiredate desc);
    Index created.
    SQL> select empno, ename, hiredate
    2 from big_emp e where hiredate >= to_date('1980-01-01', 'YYYY-MM-DD') and hiredate <= to_date('1983-12-31', 'YYYY-MM-DD') ;
    11971 rows selected.
    Execution Plan
    | Id | Operation | Name | Rows | Bytes | Cost |
    | 0 | SELECT STATEMENT | | 29 | 551 | 4 |
    | 1 | TABLE ACCESS BY INDEX ROWID| BIG_EMP | 29 | 551 | 4 |
    |* 2 | INDEX RANGE SCAN | I_BIG_EMP_HIREDATE | 53 | | 2 |
    i have 2 questions
    1. In "Expert one-on-one Oracle", Tom said, there is no deference between ASC and DESC index in case of one column because Oracle can just read in reverse order. but my test made me confused. why Oracle did "full table scan" only in ASC index???
    2. using "set autot trace" command. i believed the the "Rows" column mean the rows that Oracle access. Can you explain why the rows are 29(DESC) and 11766(ASC) in spite of the result is 11971. what is the exact meaning of "Rows" column in execution plan

    I think what you're seeing is a bug in the optimizer. If you had printed up the predicate section of the execution plan, this would be more obvious. I have the query:
    select *
    from   t1
    where  d1 between to_date('01-jan-2001')
              and     to_date('31-dec-2003')
    ;This returns one row per day for 3 years, and when a normal index is created on it, the optimizer calculates the correct cardinality and uses a sensible set of predicates. But when I use a descending index, this is what I get:
    Execution Plan
    Plan hash value: 1429545322
    | Id  | Operation                   | Name  | Rows  | Bytes | Cost  |
    |   0 | SELECT STATEMENT            |       |  1097 | 21940 |     2 |
    |   1 |  TABLE ACCESS BY INDEX ROWID| T1    |  1097 | 21940 |     2 |
    |*  2 |   INDEX RANGE SCAN          | T1_I1 |     5 |       |     2 |
    Predicate Information (identified by operation id):
       2 - access(SYS_OP_DESCEND("D1")>=HEXTORAW('8798F3E0FEF8FEFAFF')  AND
                  SYS_OP_DESCEND("D1")<=HEXTORAW('879AFEF8FEF8FEFAFF') )
           filter(SYS_OP_UNDESCEND(SYS_OP_DESCEND("D1"))>=TO_DATE('2001-01-0
                  1 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND
                  SYS_OP_UNDESCEND(SYS_OP_DESCEND("D1"))<=TO_DATE('2003-12-31 00:00:00',
                  'yyyy-mm-dd hh24:mi:ss'))Note the introduction of the strange sys_op_descend() function - which is related to the descending index implemention, and the extra FILTER predicates which introduce a significant extra selectivity effect. The optimizer is double-counting on selectivity effects, and introducing extra factors of 1% and 5% (I haven't checked exact details) due to the functions applied to columns and the range-based predicates.
    Regards
    Jonathan Lewis
    http://jonathanlewis.wordpress.com
    http://www.jlcomp.demon.co.uk

  • What is the diffrence between OCI and OCCI?

    What is the diffrence between OCI and OCCI?

    Will Lee wrote:
    What is the diffrence between OCI and OCCI?Beside the other answers, there are a few additional points to consider:
    1) OCI is the "gold" standard API. New stuff is always available in OCI first, and only later trickles down to other APIs, like OCCI.
    2) OCI is a low-level API, harder to get started with, than OCCI. APIs in OCI are often "untyped", taking a void*, which opens the door for errors.
    3) In OCCI you set values, while in OCI you bind them. So OCCI takes a copy of your values, while OCI takes an address at which to later read the value. This opens the door to subtle bugs where you pass the address of a temporary in OCI, which later crashes in some mysterious ways. So OCCI is way safer in this regard.
    4) OCI is C code, which is very portable. Because OCCI is C++ code, and on Windows you can't easily mix and match libraries compiled with different versions of Visual C++ (VC6, 7, 8, 9), you have to wait for Oracle to make a new build with the latest MS compiler. Just see the number of questions on this OCI forum and the OCCI one.
    5) OCI is used internally by Oracle to write many of their own tools, it's the lingua franca between the Core DB group and the other groups. Since they use it themselves, it's much more stable that OCCI, which is mostly only used by outside customers.
    6) The way SQL objects are dealt with in OCI and OCCI is fundamentally different, to the point where you can't mix and match OCCI and OCI object calls.
    #1 above is one reason we had to abandon using OCCI, lacked support for the new in 11g BinaryXML, but that's just one example.
    IMHO OCI is the way to go, if you want the latest and greatest. Yes, it's more difficult to code against, so the learning curve is steeper, but once you've reached critical mass it's just fine. If you write code in C++ as opposed to C, you can easily make it a lot safer with a thin C++ layer on top which, unlike OCCI, still allows you access any OCI raw handle to do stuff the wrappers don't expose. My $0.02 ;-) --DD                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • What is the difference between apps and applications?

    I have an application that I've been running on my older Mac. Now that I have a new MacBook Pro, I have to reinstall new software that is compatible. When I go to the vendor website I see an application I can download or a link to the Mac App Store. Is an application different than an app? When should you download them from a vendor website and when should you go to the app store? Do apps end up in the Launchpad and an application in your Applications folder? I can't seem to find information on what is the distinction. Are they actually two different things? Any help would be appreciated.

    No difference between apps and applications. If you download the app from the Apple AppsStore you have better security and a conveninet place to have all your downloads. Nothing wrong with downloading from a trusted developer though.
    EDIT: Yes they will either wind up in your Download folder as  a .dmg you will have to double-click on to install, or most app store apps will install to your Applications folder.

  • What is the difference between ActionEvent and SelectionEvent?

    Technical Environment:
    Oracle jDeveloper 11.1.1.4.0
    Windows XP
    I think there is something behind ActionEvent and SelectionEvent that makes my code doesn't work.
    Here is my problem:
    I have three tables. One is a master table, contains summary of something. If I select a row on this table, the second table will show some data, based on the selected row on the first table. Yup, this is a ViewLink, and it is working perfectly. Now, I want the same thing works between the second and third table. If I select a row in second table, the third table should show some data, based on the selected row on the second table. The third table is a ViewObject with some bind parameters. I need to assign values to these parameters, which I get the value from the selected row on the second table. How can I do this?
    I have tried to use ExecuteWithParams. Select the row from second table, get the values, pass it into ExecuteWithParams Form, execute and.. it works.. I get the result on the third table. Here is the code how I do that:
    public void updateTableEvent(ActionEvent actionEvent) {
    DCIteratorBinding iter = gen.getIteratorBinding("SearchView3Iterator");
    Row rw = iter.getCurrentRow();
    oracle.jbo.domain.Date strDate = (oracle.jbo.domain.Date) rw.getAttribute("Tgl");
    String strRkno = (String) rw.getAttribute("Rkno");
    oracle.jbo.domain.Number strRkId = (oracle.jbo.domain.Number) rw.getAttribute("Rkid");
    DCIteratorBinding iterParam = gen.getIteratorBinding("variables");
    iterParam.getBindingContainer().getVariableManager().setVariableValue("ExecuteWithParams_pRkId", strRkId);
    iterParam.getBindingContainer().getVariableManager().setVariableValue("ExecuteWithParams_pTgl", strDate);
    iterParam.getBindingContainer().getVariableManager().setVariableValue("ExecuteWithParams_pRkNo", strRkno);
    OperationBinding operationBinding = gen.getOperationBinding("ExecuteWithParams");
    Object result = operationBinding.execute();
    But when I tried the same thing on SelectionEvent, I got nothing.. no error and also no result. What I want is just select the row on the second table, and get the result on the third table, with no any button pressing. Here is the code:
    public void onRowSelect(SelectionEvent selectionEvent) {
    DCIteratorBinding iter = gen.getIteratorBinding("SearchView3Iterator");
    Row rw = iter.getCurrentRow();
    oracle.jbo.domain.Date strDate = (oracle.jbo.domain.Date) rw.getAttribute("Tgl");
    String strRkno = (String) rw.getAttribute("Rkno");
    oracle.jbo.domain.Number strRkId = (oracle.jbo.domain.Number) rw.getAttribute("Rkid");
    DCIteratorBinding iterParam = gen.getIteratorBinding("variables");
    iterParam.getBindingContainer().getVariableManager().setVariableValue("ExecuteWithParams_pRkId", strRkId);
    iterParam.getBindingContainer().getVariableManager().setVariableValue("ExecuteWithParams_pTgl", strDate);
    iterParam.getBindingContainer().getVariableManager().setVariableValue("ExecuteWithParams_pRkNo", strRkno);
    OperationBinding operationBinding = gen.getOperationBinding("ExecuteWithParams");
    Object result = operationBinding.execute();
    So.. what is actually happening here? What is the differece between ActionEvent and SelectionEvent? Why do they give me difference response?
    Thanks for any comments.
    Regards,
    Novan Ananda

    Hi,
    ActionEvent :
    A semantic event which indicates that a component-defined action occured. This high-level event is generated by a component (such as a commandbutton,commandLink) when the component-specific action occurs (such as being pressed).
    SelectionEvent :
    Event that is generated when the selection of a component changes.
    //you can also search in api's

  • Directory Binding Script (Active and Open Directory) 10.7

    Hi everyone
    I'm reposting this in the right thread. I've written a Directory Binding Script for 10.6 and ported it now to 10.7 as among the things that have changed in the upgraded version is a refurbished directory binding enviroment.
    The original thread can be found here: https://discussions.apple.com/thread/3090068. The script is applicable for clients as well and simplifies the binding process considerably.
    Be aware that the reformatted script here contains some faulty line breaks. So you'll have to correct them in a proper text editor.
    #!/bin/sh
    #Uncomment the following line to abort the script on errors
    #trap exit ERR
    ## Script to automate OD and AD Binding of Mac OS X 10.7 Servers
    ## Script written by Marc Horat, URZ Basel, 11.6.2010
    ## Updated: 12.08.2011
    # With the use of the following sources as inspiration:
    # http://www.howtomac.co.uk/?p=247
    #Created by Ross Hamilton
    #Clock restart / Remove existing settings
    #Join to Open Directory and Active Directory
    # Bombich's AD-Bind Script:
    # This script binds to AD and configures advanced options of the AD plugin
    # As this scripts contains a password, be sure to take appropriate security
    # precautions
    # A good way to run this script is to set it as a login hook on your master machine
    # Because it only needs to be run once, the last thing this script does is to delete
    # itself. If you have another login script that you typically run, include the
    # script on your master machine, and indicate its path in the "newLoginScript"
    # variable.
    # If running this as a one-time login hook to bind to AD after imaging,
    # be sure to enable auto-login (for any local user) before creating your master image
    #################CONFIGURATION##########################
    #OD
    # These variables need to be configured for your env
    odAdmin="YOURODADMIN" #enter your OD admin name between the quotes
    odPassword="YOURODPW"  # Enter your OD admin password between the quotes
    oddomain="YOURODDOMAIN" # FQDN of your OD domain
    computerGroup="YOURNEWODCOMPGROUP"  # Add appropriate computer group you want machines to be added to, case sensitive
    oldComputerGroup="YOUROLDODCOMPGROUP" # If the Computer is in a Group already
    #AD
    # Standard parameters
    domain="YOURADDOMAIN"                              # fully qualified DNS name of Active Directory Domain
    domainname="YOURADDOMAINNAME"                    #Name of the Domain as specified in the search paths
    udn="YOURADADMIN"                              # username of a privileged network user
    password="YOURADPW"                                                  # password of a privileged network user
    ou="OU=YOUR,OU=OU,OU=URZ,OU=IN,DC=YOUR,DC=AD,DC=DOMAIN"                    # Distinguished name of container for the computer E.G. OU=Macs,OU=Computers,DC=AD,DC=DOMAIN,DC=CH
    # Advanced options AD Plugin
    alldomains="disable"                              # 'enable' or 'disable' automatic multi-domain authentication
    localhome="disable"                              # 'enable' or 'disable' force home directory to local drive
    protocol="smb"                                        # 'afp', 'smb' or 'nfs' (since 10.7) change how home is mounted from server
    mobile="enable"                              # 'enable' or 'disable' mobile account support for offline logon
    mobileconfirm="enable"                    # 'enable' or 'disable' warn the user that a mobile acct will be created
    useuncpath="enable"                              # 'enable' or 'disable' use AD SMBHome attribute to determine the home dir
    user_shell="/bin/bash"                    # e.g., /bin/bash or "none"
    preferred="-preferred $domain"          # Use the specified server for all Directory lookups and authentication
    # (e.g. "-nopreferred" or "-preferred ad.server.edu")
    admingroups="$domainname\YOURADADMINGROUP" # These comma-separated AD groups may administer the machine (e.g. "" or "APPLE\macadmins")
    packetsign="allow"                              # allow | disable | require
    packetencrypt="allow"                    # allow | disable | require
    passinterval="14"                              # number of days
    namespace="domain"                              # forest | domain
    # Login hook setting -- specify the path to a login hook that you want to run instead of this script
    newLoginHook=""                    # e.g., "/Library/Management/login.sh"
    ################################# End of configuration
    ############ Begin of Script
    # Host-specific parameters
    # computerid should be set dynamically, this value must be machine-specific
    # This value may be restricted to 19 characters! The only error you'll receive upon entering
    # an invalid computer id is to the effect of not having appropriate privileges to perform the requested operation
    #computerid=`/sbin/ifconfig en0 | awk '/ether/ { gsub(":", ""); print $2 }'` # MAC Address
    #computerid=`hostname | sed 's/.unibas.ch//'`
    #computerid=`/usr/sbin/scutil --get LocalHostName | cut -c 1-19` # Assure that this will produce unique names!
    #computerid=`/usr/sbin/scutil --get LocalHostName`
    computerid=`scutil --get ComputerName`
    adcomputerid=`echo "$computerid" | tr [:lower:] [:upper:]`
    # These variables probably don't need to be changed
    # Determing if any directory binding exists
    nicAddress=`ifconfig en0 | grep ether | awk '{print $2}'`
    if dscl localhost -list /LDAPv3 | grep . > /dev/null
    then
              check4ODtmp=`dscl localhost -list /LDAPv3 | grep -n 1 | sed 's/1://' | sed 's/2://'`
              check4OD=${check4ODtmp//[[:space:]]/}
              echo "Found LDAP: "$check4ODtmp
              check4ODaccttmp=`dscl /LDAPv3/"$check4OD" -read Computers/"$computerid" RealName | cut -c 11-`
              check4ODacct=${check4ODaccttmp//[[:space:]]/}
              echo "Found LDAP-Computer-Account: "$check4ODacct
    else
              check4OD=""
              check4ODacct=""
              echo "No bound LDAP Server found"
    fi
    if [ $oldComputerGroup != "" ] && dscl localhost -list /LDAPv3 | grep . > /dev/null
    then
              check4ODgroupMembershiptmp=`dscl /LDAPv3/"$check4OD" -read ComputerGroups/"$oldComputerGroup" | grep "$computerid"`
              check4ODgroupMembership=$check4ODgroupMembershiptmp
              echo "LDAP Group Membership in Group: "$oldComputerGroup
    else
              check4ODgroupMembership=""
              echo "No LDAP Group Membership defined or not bound to a server"
    fi
    if dscl localhost -list "/Active Directory" | grep $domainname > /dev/null
    then
              check4ADtmp=`dsconfigad -show | grep "Active Directory Domain" | sed 's/Active Directory Domain//'  | sed 's/=//'`
              check4AD=${check4ADtmp//[[:space:]]/}
              echo "Found AD: "$check4AD
              check4ADaccttmp=`dsconfigad -show | grep "Computer Account" | sed 's/Computer Account//' | sed 's/=//'`
              check4ADacct=${check4ADaccttmp//[[:space:]]/}
              echo "Found AD-Account: "$check4ADacct
    else
              check4AD=""
              check4ADacct=""
              echo "No AD-Account found"
    fi
    osversionlong=`sw_vers -productVersion`
    osvers=${osversionlong:3:1}
    #Time Sync
    #Restart ntpdate
    StartService ()
    if [ "${TIMESYNC:=-YES-}" = "-YES-" ] && ! GetPID ntpd > /dev/null; then
              CheckForNetwork
    if [ -f /var/run/NetworkTime.StartupItem -o "${NETWORKUP}" = "-NO-" ]; then exit; fi
              touch /var/run/NetworkTime.StartupItem
              echo "Starting network time synchronization"
    # Synchronize our clock to the network’s time,
    # then fire off ntpd to keep the clock in sync.
              ntpdate -bvs
              ntpd -f /var/run/ntp.drift -p /var/run/ntpd.pid
    fi
    echo ""
    echo ""
    sleep 5
    #### Removing any existing directory bindings
    #Clear OD Computer Account and delete entry from Computer group
    if dscl localhost -list /LDAPv3 | grep . > /dev/null
    then
              echo "This computer is bound to the following Open Directory Services:"
              dscl localhost -list /LDAPv3
              echo "With the Search Path entries:"
              dscl /Search -read / CSPSearchPath | grep /LDAP
              sleep 5
              if [ "${check4ODacct}" == "${computerid}" ]
              then
                        echo "This machine already has a computer account on $oddomain."
                        # Set the GUID
                        GUID="$(dscl /LDAPv3/$oddomain -read /Computers/${computerid} GeneratedUID | awk '{ print $2 }')"
                        echo "Found GUID: "$GUID
                        if [ "$oldComputerGroup" != "" ] && [ "$check4ODgroupMembership" != "" ]
                        then
                                  echo "Removing entry from group $oldComputerGroup"
                                  dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$check4OD" -delete /ComputerGroups/"$oldComputerGroup" GroupMembership "${computerid}"
                                  dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$check4OD" -delete /ComputerGroups/"$oldComputerGroup" GroupMembers "${GUID}"
                                  dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$check4OD" -delete /ComputerLists/"$oldComputerGroup" Computers "${computerid}"
                        fi
                        echo "Removing Computer entry $computerid in OD"
                        dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$check4OD" -delete /Computers/"${computerid}"
              fi
              #List existing Directories
              echo "Removing OD-Binding to "$check4OD
              dsconfigldap -r "$check4OD"
              echo "Removing Search Path entries"
              dscl /Search -delete / CSPSearchPath /LDAPv3/"$check4OD"
              dscl /Search/Contacts -delete / CSPSearchPath /LDAPv3/"$check4OD"
              dscl /Search -delete / CSPSearchPath /LDAPv3/"$check4OD"
              sleep 5
    else
              echo "No LDAP or OD Binding present.";
    fi
    echo ""
    # Check a second time in order to delete any remaining LDAP-Bindings
    echo "Scanning for further LDAP servers"
    if dscl localhost -list /LDAPv3 | grep . > /dev/null
    then
              echo "Found:"
              dscl localhost -list /LDAPv3
              echo "Removing OD-Binding to "$check4ODtmp
              dsconfigldap -r "$check4ODtmp"
              dscl /Search -delete / CSPSearchPath /LDAPv3/"$check4ODtmp"
              dscl /Search/Contacts -delete / CSPSearchPath /LDAPv3/"$check4ODtmp"
              dscl /Search -delete / CSPSearchPath /LDAPv3/"$check4ODtmp"
              sleep 5
    else
              echo "No further LDAP or OD Binding present."
    fi
    echo ""
    echo ""
    #Remove the Active Directory binding
    if [ "$check4AD" != "" ]
    then
              echo "This computer is bound to the following Active Directory Services:"
              dscl localhost -list "/Active Directory"
              echo "With the Search Path entries:"
              dscl /Search -read / CSPSearchPath | grep /Active
              sleep 5
              echo "Removing any existing AD-Binding to "$check4AD
        dsconfigad -f -remove -username "$udn" -password "$password"
        echo "Removing Search Path entries"
              if [ "$preferred" != "-nopreferred" ]
              then
                        dscl /Search -delete / CSPSearchPath /Active Directory/"$domainname"
                        dscl /Search/Contacts -delete / CSPSearchPath /Active Directory/"$domainname"
                        dscl /Search -delete / CSPSearchPath /Active Directory/"$domainname"
              fi
              dscl /Search -delete / CSPSearchPath "/Active Directory/$domainname/All Domains"
              dscl /Search/Contacts -delete / CSPSearchPath "/Active Directory/$domainname/All Domains"
    #remove search path entries from 10.6
        if dscl /Search -read / CSPSearchPath | grep /Active > /dev/null
        then
            dscl /Search -delete / CSPSearchPath "/Active Directory/$domainname/$domain"
            dscl /Search/Contacts -delete / CSPSearchPath "/Active Directory/$domainname/$domain"
        fi
              sleep 5
    else
              echo "No Active Directory Binding present."
    fi
    echo ""
    #Remove Existing Directory Services Config
    echo "Removing existing DS Config"
    if [ -d "/Library/Preferences/edu.mit.Kerberos" ]
    then
              rm -R /Library/Preferences/edu.mit.Kerberos
    fi
    if [ -d "/etc/krb5.keytab" ]
    then
              rm -R /etc/krb5.keytab
    fi
    # Clean up the DirectoryService configuration files
    rm -Rfv /Library/Preferences/DirectoryService/*
    #OD
    echo ""
    echo ""
    echo "Binding to OD-Damin "$oddomain
    sleep 5
    dsconfigldap -v -a "$oddomain" -n "$oddomain" -c "$computerid"
    echo "Killing opendirectoryd"
    killall opendirectoryd
    sleep 5
    echo "Adding computer account $computerid to /LDAPv3/${oddomain} on $oddomain"
    dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$oddomain" -create /Computers/"$computerid" ENetAddress "$nicAddress"
    dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$oddomain" -merge /Computers/"$computerid" RealName "$computerid"
    # Set the GUID
    GUID="$(dscl /LDAPv3/$oddomain -read /Computers/${computerid} GeneratedUID | awk '{ print $2 }')"
    # Add computer to ComputerList and ComputerGroup
    if [ $computerGroup != "" ]
    then
              echo "Adding computer $computerid to OD group $computerGroup on $oddomain"
              dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$oddomain" -merge /ComputerLists/"$computerGroup" apple-computers "$computerid"
              dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$oddomain" -merge /ComputerGroups/"$computerGroup" apple-group-memberguid "${GUID}"
              dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$oddomain" -merge /ComputerGroups/"$computerGroup" memberUid "$computerid"
    fi
    echo "Finished OD Binding."
    sleep 5 # Give DS a chance to catch up
    echo ""
    echo ""
    echo "Performing the AD Binding"
    #AD
    # Activate the AD plugin
    defaults write /Library/Preferences/DirectoryService/DirectoryService "Active Directory" "Active"
    plutil -convert xml1 /Library/Preferences/DirectoryService/DirectoryService.plist
    #Use the existing AD-Computername or generate a new one
    computeridtmp="default"
    if [ "$check4ADacct" == "" ]
    then
              LEN=$(echo ${#adcomputerid})
              if [ $LEN -lt 15 ]; then
                      echo "ComputerID "$adcomputerid " has 15 characters or less and is therefore suitable for AD-Binding. It is $adcomputerid"
                      computeridtmp=$adcomputerid
              else
                      echo "ComputerID "$adcomputerid " has 16 or more characters and needs to be modified for AD-Binding."
                        echo "Removing any -"
                      computeridtmp=${adcomputerid//-/}
                                  LEN=$(echo ${#computeridtmp})
                                  if [ $LEN -lt 15 ]; then
                                            echo "ComputerID "$computeridtmp" has now 15 characters or less and is therefore suitable for AD-Binding."
                                  else
                                            echo "Only using the last 15 characters of the Computer name to be able to bind to AD."
                                            computeridtmp=${computeridtmp:(-15)}
                                  fi
                      echo "Cropped Computername to "$computeridtmp
              fi
    else
        computeridtmp=${check4ADacct//$/}
        echo "Found existing AD Account previously, attempting to recreate in the OU: "$computeridtmp
    fi
    echo ""
    # Bind to AD
    echo "Binding to AD-Domain "$domain" with computerid "$computeridtmp
    dsconfigad -f -add "$domain" -username "$udn" -password "$password" -ou "$ou" -computer "$computeridtmp"
    echo ""
    echo "Setting the Advanced AD Plugin options"
    # Configure advanced AD plugin options
    if [ "$admingroups" = "" ]
    then
              dsconfigad -nogroups
    else
              dsconfigad -groups "$admingroups"
    fi
    dsconfigad -alldomains "$alldomains"
    dsconfigad -localhome "$localhome"
    dsconfigad -protocol "$protocol"
    dsconfigad -mobile "$mobile"
    dsconfigad -mobileconfirm "$mobileconfirm"
    dsconfigad -useuncpath "$useuncpath"
    dsconfigad -shell "$user_shell"
    dsconfigad "$preferred"
    dsconfigad -packetsign "$packetsign" -packetencrypt "$packetencrypt" -passinterval "$passinterval"
    dsconfigad -namespace "$namespace"
    sleep 5
    echo ""
    echo ""
    # Add the OD & AD node to the search path
    if [ "$alldomains" = "enable" ]
    then
              csp="/Active Directory/$domainname/All Domains"
    else
              csp="/Active Directory/$domainname"
    fi
    echo "Finished AD Binding."
    echo "Adding Domain /LDAPv3/"$oddomain" and "$csp" to Search Path"
    dscl /Search -create / SearchPolicy CSPSearchPath
    dscl /Search/Contacts -create / SearchPolicy CSPSearchPath
    echo "Adding OD.."
    dscl /Search -append / CSPSearchPath /LDAPv3/"$oddomain"
    dscl /Search/Contacts -append / CSPSearchPath /LDAPv3/"$oddomain"
    echo "Adding AD.."
    #Adding all Domains first to improve reliability under 10.7
    if [ "$alldomains" != "enable" ]
    then
        cspadall="/Active Directory/$domainname/All Domains"
        dscl /Search/Contacts -append / CSPSearchPath "$cspadall"
        dscl /Search -append / CSPSearchPath "$cspadall"
    fi
    dscl /Search/Contacts -append / CSPSearchPath "$csp"
    dscl /Search -append / CSPSearchPath "$csp"
    echo "Finished Updating Search Paths."
    echo ""
    echo ""
    # Restart DirectoryService (necessary to reload AD plugin activation settings)
    killall opendirectoryd
    # Destroy the login hook (or change it)
    if [ "${newLoginHook}" == "" ]
    then
              defaults delete /var/root/Library/Preferences/com.apple.loginwindow LoginHook
    else
              defaults write /var/root/Library/Preferences/com.apple.loginwindow LoginHook $newLoginHook
    fi
    sleep 5
    # Customizing the login-Window
    #defaults write /Library/Preferences/com.apple.loginwindow AdminHostInfo DSStatus
    #defaults write /Library/Preferences/com.apple.loginwindow showInputMenu -bool TRUE
    #defaults write /Library/Preferences/com.apple.loginwindow SHOWFULLNAME -bool TRUE
    # This works in a pinch if the above code does not
    #defaults write /Library/Preferences/DirectoryService/SearchNodeConfig "Search Node Custom Path Array" -array "/Active Directory/All Domains"
    #defaults write /Library/Preferences/DirectoryService/SearchNodeConfig "Search Policy" -int 3
    #plutil -convert xml1 /Library/Preferences/DirectoryService/SearchNodeConfig.plist
    #killall opendirectoryd
    # Disable autologin
    defaults delete /Library/Preferences/com.apple.loginwindow autoLoginUser
    srm /etc/kcpassword
    echo ""
    echo ""
    echo ""
    echo "Now bound to OD Domain:"
    dscl localhost -list /LDAPv3
    echo "With Search Path entries:"
    dscl /Search -read / CSPSearchPath | grep /LDAP
    echo "Now bound to AD Domain:"
    dscl localhost -list "/Active Directory"
    echo "With Search Path entries:"
    dscl /Search -read / CSPSearchPath | grep /Active
    exit 0                    ## Success
    exit 1                    ## Failure
    Any inputs, questions and improvement suggestions are, of course, most welcome!
    Cheers
    See

    Hi everyone
    I'm reposting this in the right thread. I've written a Directory Binding Script for 10.6 and ported it now to 10.7 as among the things that have changed in the upgraded version is a refurbished directory binding enviroment.
    The original thread can be found here: https://discussions.apple.com/thread/3090068. The script is applicable for clients as well and simplifies the binding process considerably.
    Be aware that the reformatted script here contains some faulty line breaks. So you'll have to correct them in a proper text editor.
    #!/bin/sh
    #Uncomment the following line to abort the script on errors
    #trap exit ERR
    ## Script to automate OD and AD Binding of Mac OS X 10.7 Servers
    ## Script written by Marc Horat, URZ Basel, 11.6.2010
    ## Updated: 12.08.2011
    # With the use of the following sources as inspiration:
    # http://www.howtomac.co.uk/?p=247
    #Created by Ross Hamilton
    #Clock restart / Remove existing settings
    #Join to Open Directory and Active Directory
    # Bombich's AD-Bind Script:
    # This script binds to AD and configures advanced options of the AD plugin
    # As this scripts contains a password, be sure to take appropriate security
    # precautions
    # A good way to run this script is to set it as a login hook on your master machine
    # Because it only needs to be run once, the last thing this script does is to delete
    # itself. If you have another login script that you typically run, include the
    # script on your master machine, and indicate its path in the "newLoginScript"
    # variable.
    # If running this as a one-time login hook to bind to AD after imaging,
    # be sure to enable auto-login (for any local user) before creating your master image
    #################CONFIGURATION##########################
    #OD
    # These variables need to be configured for your env
    odAdmin="YOURODADMIN" #enter your OD admin name between the quotes
    odPassword="YOURODPW"  # Enter your OD admin password between the quotes
    oddomain="YOURODDOMAIN" # FQDN of your OD domain
    computerGroup="YOURNEWODCOMPGROUP"  # Add appropriate computer group you want machines to be added to, case sensitive
    oldComputerGroup="YOUROLDODCOMPGROUP" # If the Computer is in a Group already
    #AD
    # Standard parameters
    domain="YOURADDOMAIN"                              # fully qualified DNS name of Active Directory Domain
    domainname="YOURADDOMAINNAME"                    #Name of the Domain as specified in the search paths
    udn="YOURADADMIN"                              # username of a privileged network user
    password="YOURADPW"                                                  # password of a privileged network user
    ou="OU=YOUR,OU=OU,OU=URZ,OU=IN,DC=YOUR,DC=AD,DC=DOMAIN"                    # Distinguished name of container for the computer E.G. OU=Macs,OU=Computers,DC=AD,DC=DOMAIN,DC=CH
    # Advanced options AD Plugin
    alldomains="disable"                              # 'enable' or 'disable' automatic multi-domain authentication
    localhome="disable"                              # 'enable' or 'disable' force home directory to local drive
    protocol="smb"                                        # 'afp', 'smb' or 'nfs' (since 10.7) change how home is mounted from server
    mobile="enable"                              # 'enable' or 'disable' mobile account support for offline logon
    mobileconfirm="enable"                    # 'enable' or 'disable' warn the user that a mobile acct will be created
    useuncpath="enable"                              # 'enable' or 'disable' use AD SMBHome attribute to determine the home dir
    user_shell="/bin/bash"                    # e.g., /bin/bash or "none"
    preferred="-preferred $domain"          # Use the specified server for all Directory lookups and authentication
    # (e.g. "-nopreferred" or "-preferred ad.server.edu")
    admingroups="$domainname\YOURADADMINGROUP" # These comma-separated AD groups may administer the machine (e.g. "" or "APPLE\macadmins")
    packetsign="allow"                              # allow | disable | require
    packetencrypt="allow"                    # allow | disable | require
    passinterval="14"                              # number of days
    namespace="domain"                              # forest | domain
    # Login hook setting -- specify the path to a login hook that you want to run instead of this script
    newLoginHook=""                    # e.g., "/Library/Management/login.sh"
    ################################# End of configuration
    ############ Begin of Script
    # Host-specific parameters
    # computerid should be set dynamically, this value must be machine-specific
    # This value may be restricted to 19 characters! The only error you'll receive upon entering
    # an invalid computer id is to the effect of not having appropriate privileges to perform the requested operation
    #computerid=`/sbin/ifconfig en0 | awk '/ether/ { gsub(":", ""); print $2 }'` # MAC Address
    #computerid=`hostname | sed 's/.unibas.ch//'`
    #computerid=`/usr/sbin/scutil --get LocalHostName | cut -c 1-19` # Assure that this will produce unique names!
    #computerid=`/usr/sbin/scutil --get LocalHostName`
    computerid=`scutil --get ComputerName`
    adcomputerid=`echo "$computerid" | tr [:lower:] [:upper:]`
    # These variables probably don't need to be changed
    # Determing if any directory binding exists
    nicAddress=`ifconfig en0 | grep ether | awk '{print $2}'`
    if dscl localhost -list /LDAPv3 | grep . > /dev/null
    then
              check4ODtmp=`dscl localhost -list /LDAPv3 | grep -n 1 | sed 's/1://' | sed 's/2://'`
              check4OD=${check4ODtmp//[[:space:]]/}
              echo "Found LDAP: "$check4ODtmp
              check4ODaccttmp=`dscl /LDAPv3/"$check4OD" -read Computers/"$computerid" RealName | cut -c 11-`
              check4ODacct=${check4ODaccttmp//[[:space:]]/}
              echo "Found LDAP-Computer-Account: "$check4ODacct
    else
              check4OD=""
              check4ODacct=""
              echo "No bound LDAP Server found"
    fi
    if [ $oldComputerGroup != "" ] && dscl localhost -list /LDAPv3 | grep . > /dev/null
    then
              check4ODgroupMembershiptmp=`dscl /LDAPv3/"$check4OD" -read ComputerGroups/"$oldComputerGroup" | grep "$computerid"`
              check4ODgroupMembership=$check4ODgroupMembershiptmp
              echo "LDAP Group Membership in Group: "$oldComputerGroup
    else
              check4ODgroupMembership=""
              echo "No LDAP Group Membership defined or not bound to a server"
    fi
    if dscl localhost -list "/Active Directory" | grep $domainname > /dev/null
    then
              check4ADtmp=`dsconfigad -show | grep "Active Directory Domain" | sed 's/Active Directory Domain//'  | sed 's/=//'`
              check4AD=${check4ADtmp//[[:space:]]/}
              echo "Found AD: "$check4AD
              check4ADaccttmp=`dsconfigad -show | grep "Computer Account" | sed 's/Computer Account//' | sed 's/=//'`
              check4ADacct=${check4ADaccttmp//[[:space:]]/}
              echo "Found AD-Account: "$check4ADacct
    else
              check4AD=""
              check4ADacct=""
              echo "No AD-Account found"
    fi
    osversionlong=`sw_vers -productVersion`
    osvers=${osversionlong:3:1}
    #Time Sync
    #Restart ntpdate
    StartService ()
    if [ "${TIMESYNC:=-YES-}" = "-YES-" ] && ! GetPID ntpd > /dev/null; then
              CheckForNetwork
    if [ -f /var/run/NetworkTime.StartupItem -o "${NETWORKUP}" = "-NO-" ]; then exit; fi
              touch /var/run/NetworkTime.StartupItem
              echo "Starting network time synchronization"
    # Synchronize our clock to the network’s time,
    # then fire off ntpd to keep the clock in sync.
              ntpdate -bvs
              ntpd -f /var/run/ntp.drift -p /var/run/ntpd.pid
    fi
    echo ""
    echo ""
    sleep 5
    #### Removing any existing directory bindings
    #Clear OD Computer Account and delete entry from Computer group
    if dscl localhost -list /LDAPv3 | grep . > /dev/null
    then
              echo "This computer is bound to the following Open Directory Services:"
              dscl localhost -list /LDAPv3
              echo "With the Search Path entries:"
              dscl /Search -read / CSPSearchPath | grep /LDAP
              sleep 5
              if [ "${check4ODacct}" == "${computerid}" ]
              then
                        echo "This machine already has a computer account on $oddomain."
                        # Set the GUID
                        GUID="$(dscl /LDAPv3/$oddomain -read /Computers/${computerid} GeneratedUID | awk '{ print $2 }')"
                        echo "Found GUID: "$GUID
                        if [ "$oldComputerGroup" != "" ] && [ "$check4ODgroupMembership" != "" ]
                        then
                                  echo "Removing entry from group $oldComputerGroup"
                                  dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$check4OD" -delete /ComputerGroups/"$oldComputerGroup" GroupMembership "${computerid}"
                                  dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$check4OD" -delete /ComputerGroups/"$oldComputerGroup" GroupMembers "${GUID}"
                                  dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$check4OD" -delete /ComputerLists/"$oldComputerGroup" Computers "${computerid}"
                        fi
                        echo "Removing Computer entry $computerid in OD"
                        dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$check4OD" -delete /Computers/"${computerid}"
              fi
              #List existing Directories
              echo "Removing OD-Binding to "$check4OD
              dsconfigldap -r "$check4OD"
              echo "Removing Search Path entries"
              dscl /Search -delete / CSPSearchPath /LDAPv3/"$check4OD"
              dscl /Search/Contacts -delete / CSPSearchPath /LDAPv3/"$check4OD"
              dscl /Search -delete / CSPSearchPath /LDAPv3/"$check4OD"
              sleep 5
    else
              echo "No LDAP or OD Binding present.";
    fi
    echo ""
    # Check a second time in order to delete any remaining LDAP-Bindings
    echo "Scanning for further LDAP servers"
    if dscl localhost -list /LDAPv3 | grep . > /dev/null
    then
              echo "Found:"
              dscl localhost -list /LDAPv3
              echo "Removing OD-Binding to "$check4ODtmp
              dsconfigldap -r "$check4ODtmp"
              dscl /Search -delete / CSPSearchPath /LDAPv3/"$check4ODtmp"
              dscl /Search/Contacts -delete / CSPSearchPath /LDAPv3/"$check4ODtmp"
              dscl /Search -delete / CSPSearchPath /LDAPv3/"$check4ODtmp"
              sleep 5
    else
              echo "No further LDAP or OD Binding present."
    fi
    echo ""
    echo ""
    #Remove the Active Directory binding
    if [ "$check4AD" != "" ]
    then
              echo "This computer is bound to the following Active Directory Services:"
              dscl localhost -list "/Active Directory"
              echo "With the Search Path entries:"
              dscl /Search -read / CSPSearchPath | grep /Active
              sleep 5
              echo "Removing any existing AD-Binding to "$check4AD
        dsconfigad -f -remove -username "$udn" -password "$password"
        echo "Removing Search Path entries"
              if [ "$preferred" != "-nopreferred" ]
              then
                        dscl /Search -delete / CSPSearchPath /Active Directory/"$domainname"
                        dscl /Search/Contacts -delete / CSPSearchPath /Active Directory/"$domainname"
                        dscl /Search -delete / CSPSearchPath /Active Directory/"$domainname"
              fi
              dscl /Search -delete / CSPSearchPath "/Active Directory/$domainname/All Domains"
              dscl /Search/Contacts -delete / CSPSearchPath "/Active Directory/$domainname/All Domains"
    #remove search path entries from 10.6
        if dscl /Search -read / CSPSearchPath | grep /Active > /dev/null
        then
            dscl /Search -delete / CSPSearchPath "/Active Directory/$domainname/$domain"
            dscl /Search/Contacts -delete / CSPSearchPath "/Active Directory/$domainname/$domain"
        fi
              sleep 5
    else
              echo "No Active Directory Binding present."
    fi
    echo ""
    #Remove Existing Directory Services Config
    echo "Removing existing DS Config"
    if [ -d "/Library/Preferences/edu.mit.Kerberos" ]
    then
              rm -R /Library/Preferences/edu.mit.Kerberos
    fi
    if [ -d "/etc/krb5.keytab" ]
    then
              rm -R /etc/krb5.keytab
    fi
    # Clean up the DirectoryService configuration files
    rm -Rfv /Library/Preferences/DirectoryService/*
    #OD
    echo ""
    echo ""
    echo "Binding to OD-Damin "$oddomain
    sleep 5
    dsconfigldap -v -a "$oddomain" -n "$oddomain" -c "$computerid"
    echo "Killing opendirectoryd"
    killall opendirectoryd
    sleep 5
    echo "Adding computer account $computerid to /LDAPv3/${oddomain} on $oddomain"
    dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$oddomain" -create /Computers/"$computerid" ENetAddress "$nicAddress"
    dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$oddomain" -merge /Computers/"$computerid" RealName "$computerid"
    # Set the GUID
    GUID="$(dscl /LDAPv3/$oddomain -read /Computers/${computerid} GeneratedUID | awk '{ print $2 }')"
    # Add computer to ComputerList and ComputerGroup
    if [ $computerGroup != "" ]
    then
              echo "Adding computer $computerid to OD group $computerGroup on $oddomain"
              dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$oddomain" -merge /ComputerLists/"$computerGroup" apple-computers "$computerid"
              dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$oddomain" -merge /ComputerGroups/"$computerGroup" apple-group-memberguid "${GUID}"
              dscl -u "${odAdmin}" -P "${odPassword}" /LDAPv3/"$oddomain" -merge /ComputerGroups/"$computerGroup" memberUid "$computerid"
    fi
    echo "Finished OD Binding."
    sleep 5 # Give DS a chance to catch up
    echo ""
    echo ""
    echo "Performing the AD Binding"
    #AD
    # Activate the AD plugin
    defaults write /Library/Preferences/DirectoryService/DirectoryService "Active Directory" "Active"
    plutil -convert xml1 /Library/Preferences/DirectoryService/DirectoryService.plist
    #Use the existing AD-Computername or generate a new one
    computeridtmp="default"
    if [ "$check4ADacct" == "" ]
    then
              LEN=$(echo ${#adcomputerid})
              if [ $LEN -lt 15 ]; then
                      echo "ComputerID "$adcomputerid " has 15 characters or less and is therefore suitable for AD-Binding. It is $adcomputerid"
                      computeridtmp=$adcomputerid
              else
                      echo "ComputerID "$adcomputerid " has 16 or more characters and needs to be modified for AD-Binding."
                        echo "Removing any -"
                      computeridtmp=${adcomputerid//-/}
                                  LEN=$(echo ${#computeridtmp})
                                  if [ $LEN -lt 15 ]; then
                                            echo "ComputerID "$computeridtmp" has now 15 characters or less and is therefore suitable for AD-Binding."
                                  else
                                            echo "Only using the last 15 characters of the Computer name to be able to bind to AD."
                                            computeridtmp=${computeridtmp:(-15)}
                                  fi
                      echo "Cropped Computername to "$computeridtmp
              fi
    else
        computeridtmp=${check4ADacct//$/}
        echo "Found existing AD Account previously, attempting to recreate in the OU: "$computeridtmp
    fi
    echo ""
    # Bind to AD
    echo "Binding to AD-Domain "$domain" with computerid "$computeridtmp
    dsconfigad -f -add "$domain" -username "$udn" -password "$password" -ou "$ou" -computer "$computeridtmp"
    echo ""
    echo "Setting the Advanced AD Plugin options"
    # Configure advanced AD plugin options
    if [ "$admingroups" = "" ]
    then
              dsconfigad -nogroups
    else
              dsconfigad -groups "$admingroups"
    fi
    dsconfigad -alldomains "$alldomains"
    dsconfigad -localhome "$localhome"
    dsconfigad -protocol "$protocol"
    dsconfigad -mobile "$mobile"
    dsconfigad -mobileconfirm "$mobileconfirm"
    dsconfigad -useuncpath "$useuncpath"
    dsconfigad -shell "$user_shell"
    dsconfigad "$preferred"
    dsconfigad -packetsign "$packetsign" -packetencrypt "$packetencrypt" -passinterval "$passinterval"
    dsconfigad -namespace "$namespace"
    sleep 5
    echo ""
    echo ""
    # Add the OD & AD node to the search path
    if [ "$alldomains" = "enable" ]
    then
              csp="/Active Directory/$domainname/All Domains"
    else
              csp="/Active Directory/$domainname"
    fi
    echo "Finished AD Binding."
    echo "Adding Domain /LDAPv3/"$oddomain" and "$csp" to Search Path"
    dscl /Search -create / SearchPolicy CSPSearchPath
    dscl /Search/Contacts -create / SearchPolicy CSPSearchPath
    echo "Adding OD.."
    dscl /Search -append / CSPSearchPath /LDAPv3/"$oddomain"
    dscl /Search/Contacts -append / CSPSearchPath /LDAPv3/"$oddomain"
    echo "Adding AD.."
    #Adding all Domains first to improve reliability under 10.7
    if [ "$alldomains" != "enable" ]
    then
        cspadall="/Active Directory/$domainname/All Domains"
        dscl /Search/Contacts -append / CSPSearchPath "$cspadall"
        dscl /Search -append / CSPSearchPath "$cspadall"
    fi
    dscl /Search/Contacts -append / CSPSearchPath "$csp"
    dscl /Search -append / CSPSearchPath "$csp"
    echo "Finished Updating Search Paths."
    echo ""
    echo ""
    # Restart DirectoryService (necessary to reload AD plugin activation settings)
    killall opendirectoryd
    # Destroy the login hook (or change it)
    if [ "${newLoginHook}" == "" ]
    then
              defaults delete /var/root/Library/Preferences/com.apple.loginwindow LoginHook
    else
              defaults write /var/root/Library/Preferences/com.apple.loginwindow LoginHook $newLoginHook
    fi
    sleep 5
    # Customizing the login-Window
    #defaults write /Library/Preferences/com.apple.loginwindow AdminHostInfo DSStatus
    #defaults write /Library/Preferences/com.apple.loginwindow showInputMenu -bool TRUE
    #defaults write /Library/Preferences/com.apple.loginwindow SHOWFULLNAME -bool TRUE
    # This works in a pinch if the above code does not
    #defaults write /Library/Preferences/DirectoryService/SearchNodeConfig "Search Node Custom Path Array" -array "/Active Directory/All Domains"
    #defaults write /Library/Preferences/DirectoryService/SearchNodeConfig "Search Policy" -int 3
    #plutil -convert xml1 /Library/Preferences/DirectoryService/SearchNodeConfig.plist
    #killall opendirectoryd
    # Disable autologin
    defaults delete /Library/Preferences/com.apple.loginwindow autoLoginUser
    srm /etc/kcpassword
    echo ""
    echo ""
    echo ""
    echo "Now bound to OD Domain:"
    dscl localhost -list /LDAPv3
    echo "With Search Path entries:"
    dscl /Search -read / CSPSearchPath | grep /LDAP
    echo "Now bound to AD Domain:"
    dscl localhost -list "/Active Directory"
    echo "With Search Path entries:"
    dscl /Search -read / CSPSearchPath | grep /Active
    exit 0                    ## Success
    exit 1                    ## Failure
    Any inputs, questions and improvement suggestions are, of course, most welcome!
    Cheers
    See

Maybe you are looking for

  • HP All-in-One 2355 Shared from Windows PC - Cannot print from any Mac

    Hi all! I have a HP All-in-One 2355 printer. It is installed correctly on my Mac, and when I try to use it connected by USB, works fine. But the printer is all the time conected to a PC, where is installed to. The PC runs Windows XP, at is in the sam

  • Share Point folder size limit - File Services

    I created a new folder inside a share point using Server Admin. Is there a way to set a folder size limit (quota) for that folder. P.S. I am NOT talking about user accounts quotas for home folders created using Workgroup Manager! ...Just any new fold

  • Application builder (using OpenG source)

    I just made a LV program and executable thing in LV8.2.0. Only one function (for converting cluster->ini) from OpenG was used to make the program easily. When I copy the program folder, so many OpenG (maybe related to the converting routine) codes we

  • BPC 7.0 MS-Transformation File Error Duplicated Signeddata

    Hi, I tested this transformation file on BPC 5.1, and it was able to load data with out error.  When the client moved to 7.0.  I received the following error:  Convert Data Success Record Count : 11212 Accept Count : 11212 Reject Count : 0 Skip Count

  • Iphone TouchOSC template for Logic (includes all necessary files)

    Hi Ya'll, I had been looking for TouchOSC templates for LogicPro for a while. Since I didn't find any that were useful to me I put one together myself. Now I want to share it with anyone who needs basic track control in Logic. The zip file contains 3