More implementation questions

Hello!
We are continue to investigate our trial version in order to prepare an internal review. We successfully implemented few workflows but have some questions:
1/ Is it correct that in order to put a stamp "Approved" for the dcument which has passed review process it is necessary to use Assembler task? If yes when where we can get more details about DDX? How to position out stamp inside document?
2/ We have find some interesting option in Workspace client (see screenshot). Could you please clarify how it is used? We had tried to validate a document with one step and on next step of our workflow this tool did not show that document was approved previously. We checked this for  Multiuser or Single user task assignment. What did we miss?
Regards,
Kirill

1)
The DDX Reference is here:  http://www.adobe.com/go/learn_lc_ddx_9
I believe chapter 9 in Part 1 is what you should see.
2)
To get that UI to appear in Workspace, you use the Approval Container option of the  Workspace User Interface property. See this
http://help.adobe.com/en_US/livecycle/9.0/workbenchHelp/000995.html#1033183
The Status area displays the comments that users have provided for the task, as well as the User Action that they selected to complete the task. This is most commonly used with Assign Multiple Tasks operations, but can be used with Assign Task as well. The Status area simply displays information from the Task Result Collection that you are using to store task data. See this:  http://help.adobe.com/en_US/livecycle/9.0/workbenchHelp/CreatingTasks.html#1056555
hope that helps
scott

Similar Messages

  • Window inheritance problem, implementation question

    This is a multi-part message in MIME format.
    --------------F5AF60803BB8EFA34C8D4288
    Content-Type: multipart/alternative;
    boundary="------------24CDBE5DFBEC0C4205C15C80"
    --------------24CDBE5DFBEC0C4205C15C80
    Content-Type: text/plain; charset=us-ascii
    Content-Transfer-Encoding: 7bit
    Hi!
    I have a window inheritance and implementation question. I'm using
    Forte 3.0.J.1.
    I have a super (base) window with a PushButton on it. I want to
    handle the Click event of the button in this super window therefore
    I create an event handler.
    <MyBtn> : PushButton
    I create a sub window inheriting from the previous super window.
    I put some data widgets on it and group all of them (the inherited
    button as well) into a GridField. When I set the mapped type of the grid
    the name of the inherited PushButton widget changes:
    <MainGrid.MyBtn> : PushButton
    When I run the application I get a SystemException with the
    message:
    Attempt to register an event on a NIL object (qqds_C_FieldWidget, 10).
    Traceback:
    SuperWindow.EH at line 0
    SubWindow.Display at line 5
    C++ Method(s)
    UserApp.Run at offset 105
    It is quite understandable that in runtime there is no widget called
    <MyBtn>
    and the event handler of the super class fails.
    But what I don't know : after specifing a mapped type of a GridField why
    changes
    the name of those widgets that haven't got mapped type e.g.: PushButton,
    PictureButton etc.
    How to solve this situation?
    I made a sall example which i send in attachment.
    Thanks for any help and advice in advance...
    Attila Racz Lufthansa Systems
    Hungary
    BUD LSYH
    E-mail: [email protected] .-``'.
    Tel.: (36 1) 431-2910 .` .' Mazsa ter 2-6.
    Fax : (36 1) 431-2977 _.-' '._ H-1107 Budapest,
    Hungary
    --------------24CDBE5DFBEC0C4205C15C80
    Content-Type: text/html; charset=us-ascii
    Content-Transfer-Encoding: 7bit
    <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
    <html>
    <tt>    Hi!</tt><tt></tt>
    <p><tt>I have a window inheritance and implementation question. I'm using</tt>
    <br><tt>Forte 3.0.J.1.</tt><tt></tt>
    <p><tt>I have a super (base) window with a PushButton on it. I want to</tt>
    <br><tt>handle the Click event of the button in this super window therefore</tt>
    <br><tt>I create an event handler.</tt><tt></tt>
    <p><tt>&lt;MyBtn> : PushButton</tt><tt></tt>
    <p><tt>I create a sub window inheriting from the previous super window.</tt>
    <br><tt>I put some data widgets on it and group all of them (the inherited</tt>
    <br><tt>button as well) into a GridField. When I set the mapped type of
    the grid</tt>
    <br><tt>the name of the inherited PushButton widget changes:</tt><tt></tt>
    <p><tt>&lt;MainGrid.MyBtn> : PushButton</tt><tt></tt>
    <p><tt>When I run the application I get a SystemException with the</tt>
    <br><tt>message:</tt><tt></tt>
    <p><tt>Attempt to register an event on a NIL object  (qqds_C_FieldWidget,
    10).</tt>
    <br><tt>      Traceback:</tt>
    <br><tt>          SuperWindow.EH
    at line 0</tt>
    <br><tt>          SubWindow.Display
    at line 5</tt>
    <br><tt>          C++ Method(s)</tt>
    <br><tt>          UserApp.Run
    at offset 105</tt><tt></tt>
    <p><tt>It is quite understandable that in runtime there is no widget called
    &lt;MyBtn></tt>
    <br><tt>and the event handler of the super class fails.</tt><tt></tt>
    <p><tt>But what I don't know : after specifing a mapped type of a GridField
    why changes</tt>
    <br><tt>the name of those widgets that haven't got mapped type e.g.: PushButton,</tt>
    <br><tt>PictureButton etc.</tt><tt></tt>
    <p><tt>How to solve this situation?</tt>
    <br><tt>I made a sall example which i send in attachment.</tt><tt></tt>
    <p><tt>Thanks for any help and advice in advance...</tt><tt></tt>
    <p><tt>---------------------------------------------------------------------------</tt>
    <br><tt> Attila Racz                                    
    Lufthansa Systems Hungary</tt>
    <br><tt>                                                
    BUD LSYH</tt>
    <br><tt>E-mail: [email protected]      
    .-``'.</tt>
    <br><tt>Tel.: (36 1) 431-2910               
    .`   .'     Mazsa ter 2-6.</tt>
    <br><tt>Fax : (36 1) 431-2977           
    _.-'     '._    H-1107 Budapest, Hungary</tt>
    <br><tt>---------------------------------------------------------------------------</tt>
    <br><tt></tt> </html>
    --------------24CDBE5DFBEC0C4205C15C80--
    --------------F5AF60803BB8EFA34C8D4288
    Content-Type: application/x-zip-compressed;
    name="Inh.zip"
    Content-Transfer-Encoding: base64
    Content-Disposition: inline;
    filename="Inh.zip"
    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
    --------------F5AF60803BB8EFA34C8D4288--

    import javax.swing.JOptionPane;
    public class Test{
         public static void main(String[] args)
              String newItem = "Item";
              float newSerial = 4234;
              float newCode = 3424;
              int newBase = 1000;
              boolean YesWarranty = true;
              boolean NoWarranty = true;
              Machinery test1 = new Machinery(newItem, newCode, newSerial, newBase, YesWarranty, NoWarranty);
              JOptionPane.showMessageDialog(null, "Item: " + test1.getItem() + " Serial: " + test1.getSerial() + " Code: " + test1.getCode()
              + " Warranty: " + test1.IncludeWarranty() + " No Warranty: " + test1.ExcludeWarranty()+ " Base: " + test1.getPrice());
    }Tested with this and it seems to be ok?
    Changed my final code too because it seemed to always add the 10% whether YesWarranty was true or false, so made it
              if (TrueWarranty==true) //There is a warranty, it returns the base price plus 10%
                   return (base+((base/100)*10));May have posted here too early if it does work, but there is another part so if ive trouble with that il be back :P
    Edited by: dave_the_bear on 16-Nov-2010 07:17
    Changed base to double and used the *0.1 method

  • I need some more interview question with answer on modeling,reporting.

    i need some more interview question with answer on modeling,reporting.

    Hi,
    You may find tons of topic about interview question. Please try to search forums before opening a post next time.Take a look at the link below.
    https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=bwinterviewquestions&adv=true&adv_sdn_all_sdn_author_name=
    Regards,
    ®

  • Every time I try to get on the ipod, it says I have to add more security questions, but none are listed, just two buttons that say submit.

    Every time I try to get on the Ipod games, it says I have to add more security questions, but no questions are listed, just two buttons that say "Submit" and places to put the answers to the unstated questions.  It also asks for a second email address.  It then proceeds to lock up.  Is this a scam of some sort.  There is nothing on the apple website about having additional security questions other than the one, or having a second email to operate the ipod.

    You need to contact Apple to get the questions reset. Click here, phone them, and ask for the Account Security team, or fill out and submit this form.
    Whichever method you use, you probably won't get a response until the 26th. If you absolutely must make a purchase before then, create a new Apple ID; you won't be able to transfer previous purchases or iTunes Store credit to it.
    (95471)

  • A Simpler, More Direct Question About Merge Joins

    This thread is related to Merge Joins Should Be Faster and Merge Join but asks a simpler, more direct question:
    Why does merge sort join choose to sort data that is already sorted? Here are some Explain query plans to illustrate my point.
    SQL> EXPLAIN PLAN FOR
      2  SELECT * FROM spoTriples ORDER BY s;
    PLAN_TABLE_OUTPUT
    |   0 | SELECT STATEMENT |              |   998K|    35M|  5311   (1)| 00:01:04|
    |   1 |  INDEX FULL SCAN | PKSPOTRIPLES |   998K|    35M|  5311   (1)| 00:01:04|
    ---------------------------------------------------------------------------------Notice that the plan does not involve a SORT operation. This is because spoTriples is an Index-Organized Table on the primary key index of (s,p,o), which contains all of the columns in the table. This means the table is already sorted on s, which is the column in the ORDER BY clause. The optimizer is taking advantage of the fact that the table is already sorted, which it should.
    Now look at this plan:
    SQL> EXPLAIN PLAN FOR
      2  SELECT /*+ USE_MERGE(t1 t2) */ t1.s, t2.s
      3  FROM spoTriples t1, spoTriples t2
      4  WHERE t1.s = t2.s;
    Explained.
    PLAN_TABLE_OUTPUT
    |   0 | SELECT STATEMENT       |              |    11M|   297M|       | 13019 (6)| 00:02:37 |
    |   1 |  MERGE JOIN            |              |    11M|   297M|       | 13019 (6)| 00:02:37 |
    |   2 |   SORT JOIN            |              |   998K|    12M|    38M|  6389 (4)| 00:01:17 |
    |   3 |    INDEX FAST FULL SCAN| PKSPOTRIPLES |   998K|    12M|       |  1460 (3)| 00:00:18 |
    |*  4 |   SORT JOIN            |              |   998K|    12M|    38M|  6389 (4)| 00:01:17 |
    |   5 |    INDEX FAST FULL SCAN| PKSPOTRIPLES |   998K|    12M|       |  1460 (3)| 00:00:18 |
    Predicate Information (identified by operation id):
       4 - access("T1"."S"="T2"."S")
           filter("T1"."S"="T2"."S")I'm doing a self join on the column by which the table is sorted. I'm using a hint to force a merge join, but despite the data already being sorted, the optimizer insists on sorting each instance of spoTriples before doing the merge join. The sort should be unnecessary for the same reason that it is unnecessary in the case with the ORDER BY above.
    Is there anyway to make Oracle be aware of and take advantage of the fact that it doesn't have to sort this data before merge joining it?

    Licensing questions are best addressed by visiting the Oracle store, or contacting a salesrep in your area
    But I doubt you can redistribute the product if you aren't licensed yourself.
    Question 3 and 4 have obvious answers
    3: Even if you could this is illegal
    4: if tnsping is not included in the client, tnsping is not included in the client, and there will be no replacement.
    Tnsping only establishes whether a listener is running and shouldn't be called from an application
    Sybrand Bakker
    Senior Oracle DBA

  • PL/SQL Ad-hoc Reporting Implementation Questions

    Recently, I have been put on a development team that is developing a small reporting module for one of our applications.
    I'm trying to mask the underlying structure from the application by having the application run PL/SQL procedures which return REF CURSORS to the client with the requested data. Right now I'm struggling with how to implement the PL/SQL in the best fashion.
    Since this is a reporting tool the user has many combinations of selections. For example at a high level this application has a combination of multiple dropdowns (4-6), radio buttons, and check boxes. As you can see this results in a high amount of possible combinations that have to be sent to the database.
    Basically, the user chooses the following:
    1. Columns to receive (ie different SELECT lists in the PL/SQL)
    2. Specific conditions (ie different WHERE clauses in the PL/SQL)
    3. Aggregate functions (SUMS, TOTALS, AVERAGES based on #1 and #2)
    4. Trends based on #3.
    So... with that said I see two possibilities:
    1. Create a static query for each combination of parameters (in this case that would most likely result in at least 300 queries that would have to be written, possibly 600+).
    The problem I see with this is that I will have to write a significant amount of queries. This is a lot of front end work that, while is tedious, could result in a better performing system because it would be a parse once, execute many scenario which is scalable.
    The downside though is that if any of the underlying structure changes I have to go through and change tens of queries.
    2. Use DBMS_SQL and dynamically generate the queries based on input conditions.
    This approach (possibly) sacrifices performance (parse once, execute once situation), but has increased maintainability because it is more likely that I'll have to make one change vice a number of changes in scenario 1.
    A downside to this is that, it may be harder to debug (and hence maintain) because the SQL is generated on the fly.
    My questions to all is:
    1. Which is the approach that would best manage maintainability / performance?
    2. Is there any other approaches to using PL/SQL as a reporting tool that I am not thinking of?
    The database is 10.2.0.3, and the 'application' is PHP 5.1 running on IIS 6.
    If you need me to provide any additional information please let me know.
    Thanks!

    Ref cursors are an ugly solution (different though in 11g).
    You build a dynamic SQL. It must/should have bind variables. But a ref cursor does not allow you to dynamically bind values to bind variables. You need to code the actual bind variables into the code as part of the open cursor command. And at coding time you have no idea how many bind variables there will be in that dynamic SQL for the ref cursor.
    The proper solution is DBMS_SQL as it allows exactly this. Also one of the reasons why APEX uses this for its report queries.
    The only sensible way to implement this type of thing in PL/SQL is by not trying to make it generic (as one could with DBMS_SQL). Instead use polymorphisms and have each procedure construct the appropriate ref cursor with bind variables.
    E.g.
    SQL> create or replace package query as
    2 procedure Emp( c in out sys_refcursor );
    3 procedure Emp( c in out sys_refcursor, nameLike varchar2 );
    4 procedure EMp( c in out sys_refcursor, deptID number );
    5 end;
    6 /
    Package created.
    SQL>
    SQL> create or replace package body query as
    2
    3 procedure Emp( c in out sys_refcursor ) is
    4 begin
    5 open c for select * from emp order by 1;
    6 end;
    7
    8 procedure Emp( c in out sys_refcursor, nameLike varchar2 ) is
    9 begin
    10 open c for select * from emp where ename like nameLike order by 1;
    11 end;
    12
    13 procedure EMp( c in out sys_refcursor, deptID number ) is
    14 begin
    15 open c for select * from emp where deptno = deptID order by sal;
    16 end;
    17 end;
    18 /
    Package body created.
    SQL>
    SQL> var c refcursor
    SQL> exec query.Emp( :c, 'S%' )
    PL/SQL procedure successfully completed.
    SQL>
    SQL> print c
    EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
    7369 SMITH CLERK 7902 1980-12-17 00:00:00 800 20
    7788 SCOTT ANALYST 7566 1987-04-19 00:00:00 3000 20
    SQL>

  • Metro Ethernet implementation questions

    I am planning a Metro Ethernet upgrade for a network I manage. This is the first time I’ve implemented Metro on any network. I’m looking for some suggestions and answers to a couple questions regarding this upgrade.
    The current network is Hub and spoke connected by copper lines to 17 different locations from a DS3 @ our HQ. HQ also has a DS3 to the internet which the branch locations go out for internet. At our branches we have a private and public network on different subnets. Each branch location has either a T1 or bonded T1 connected to a Cisco 2801 router then to Netgear PoE managed switch(s).
    The upgrade of the DS3 for internet is going to 100 meg. The data side will also be 100meg at HQ, 10meg to our small locations and 100meg to the large.
    My question is what do I need to be aware of on our existing network that must change to get this working?
    1)      Will I simply go from the layer2 Metro Switch to our router?
    2)      Should I remove the router and go directly to the Netgear switch?
    3)      Do I need to VLAN the private and public networks?
    4)      Do I need to change routing tables?
    Thoughts and/or suggestions welcome.
    Let me know if more information is required to assist in answers.
    Thanks

    Hi,
    I think it would be better to include Cisco Account Manager/SE for this upgrade, they can guide you better and can come up with LLD for this upgrade, otherwise upgrading your 17 sites without proper planning can cause you serious issues.
    Yasir

  • JCO Server implementation questions

    Hi experts,
    I want to try to create a JCO Server with the JCO 3 library.
    I'm kinda lost in all the links I've found since there is still a lot of things from the JCO 2 on the internet and I don't understand everything I'm doing.
    Please note that there is already a working Java JCO server with old IBM tools and we need to migrate to JCO 3.
    So here are my questions :
    What do I have to do exactly in the sm59 transaction ?
    Here is what I get in the RSGWLST transaction http://i.imgur.com/IRgAyO8.png http://i.imgur.com/YyfDQbt.png (Loic-PC is my machine so I guess my java jco server is up.) Is everything ok ?
    I have followed this link (Java Program for Creating a Server Connection - Components of SAP Communication Technology - SAP Library) to create my java jco server. What exactly are ServerDataProvider.JCO_GWHOST, ServerDataProvider.JCO_GWSERV and above all ServerDataProvider.JCO_PROGID)
    How do I testmy Java JCO server ? I understood that I have to call STFC_TRANSACTION in se37 where I put my jco destination (previously set up in sm59 ?) and a string but I have a dump when I'm tying that.
    I hope someone can help me, everything is still really blurry to me.
    Regards
    Here is the code I use to try to connect :
        static String SERVER_NAME1 = "JCO_SERVER";
        static String DESTINATION_NAME1 = "ABAP_AS_WITHOUT_POOL";
        static String DESTINATION_NAME2 = "ABAP_AS_WITH_POOL";
        static
            Properties connectProperties = new Properties();
            connectProperties.setProperty(DestinationDataProvider.JCO_ASHOST, "172.16.200.114");
            connectProperties.setProperty(DestinationDataProvider.JCO_SYSNR,  "00");
            connectProperties.setProperty(DestinationDataProvider.JCO_CLIENT, "500");
            connectProperties.setProperty(DestinationDataProvider.JCO_USER,   "develop2");
            connectProperties.setProperty(DestinationDataProvider.JCO_PASSWD, "passw0rd");
            connectProperties.setProperty(DestinationDataProvider.JCO_LANG,   "en");
            createDataFile(DESTINATION_NAME1, "jcoDestination", connectProperties);
            connectProperties.setProperty(DestinationDataProvider.JCO_POOL_CAPACITY, "3");
            connectProperties.setProperty(DestinationDataProvider.JCO_PEAK_LIMIT,    "10");
            createDataFile(DESTINATION_NAME2, "jcoDestination", connectProperties);
            Properties servertProperties = new Properties();
            servertProperties.setProperty(ServerDataProvider.JCO_GWHOST, "sapdevdb02");
            servertProperties.setProperty(ServerDataProvider.JCO_GWSERV, "sapgw00");
            servertProperties.setProperty(ServerDataProvider.JCO_PROGID, "JCOServer");
            servertProperties.setProperty(ServerDataProvider.JCO_REP_DEST, "ABAP_AS_WITH_POOL");
            servertProperties.setProperty(ServerDataProvider.JCO_CONNECTION_COUNT, "2");
            createDataFile(SERVER_NAME1, "jcoServer", servertProperties);

    Hi Loic.
    The properties GWHost is Gateway Host and GWSERV stands for Gateway Server.
    Please look at this link to get more details:
    Possible Parameters (SAP Library - Components of SAP Communication Technology)
    Could you please put your full code for this class?
    I'm saying this because the code you have wrote only creates the propreties file that JCO uses to configure the server but you have to run your server through the main statement.
    You have to do something like that on your StfcConnectionHandler class.
    public static void main(String[] args) {
           step1SimpleServer();
    See my example:
    StfcConnectionHandler class--------------------
    package main;
    import com.sap.conn.jco.JCoException;
    import com.sap.conn.jco.JCoFunction;
    import com.sap.conn.jco.server.DefaultServerHandlerFactory;
    import com.sap.conn.jco.server.JCoServer;
    import com.sap.conn.jco.server.JCoServerContext;
    import com.sap.conn.jco.server.JCoServerFactory;
    import com.sap.conn.jco.server.JCoServerFunctionHandler;
    public class StfcConnectionHandler implements JCoServerFunctionHandler {
      private static final String SERVER_NAME1 = "YOUR_SERVER_NAME";
      public void handleRequest(JCoServerContext serverCtx, JCoFunction function) {
      System.out
      .println("----------------------------------------------------------------");
      System.out.println("call              : " + function.getName());
      System.out
      .println("ConnectionId      : " + serverCtx.getConnectionID());
      System.out.println("SessionId         : " + serverCtx.getSessionID());
      System.out.println("TID               : " + serverCtx.getTID());
      System.out.println("repository name   : "
      + serverCtx.getRepository().getName());
      System.out
      .println("is in transaction : " + serverCtx.isInTransaction());
      System.out.println("is stateful       : "
      + serverCtx.isStatefulSession());
      System.out
      .println("----------------------------------------------------------------");
      System.out.println("gwhost: " + serverCtx.getServer().getGatewayHost());
      System.out.println("gwserv: "
      + serverCtx.getServer().getGatewayService());
      System.out.println("progid: " + serverCtx.getServer().getProgramID());
      System.out
      .println("----------------------------------------------------------------");
      System.out.println("attributes  : ");
      System.out.println(serverCtx.getConnectionAttributes().toString());
      System.out
      .println("----------------------------------------------------------------");
      System.out.println("req text: "
      + function.getImportParameterList().getString("REQUTEXT"));
      function.getExportParameterList().setValue("ECHOTEXT",
      function.getImportParameterList().getString("REQUTEXT"));
      function.getExportParameterList().setValue("RESPTEXT", "Hello World");
      static void step1SimpleServer() {
      JCoServer server;
      try {
      server = JCoServerFactory.getServer(SERVER_NAME1);
      } catch (JCoException ex) {
      throw new RuntimeException("Unable to create the server "
      + SERVER_NAME1 + ", because of " + ex.getMessage(), ex);
      JCoServerFunctionHandler stfcConnectionHandler = new StfcConnectionHandler();
      DefaultServerHandlerFactory.FunctionHandlerFactory factory = new DefaultServerHandlerFactory.FunctionHandlerFactory();
      factory.registerHandler("STFC_CONNECTION", stfcConnectionHandler);
      server.setCallHandlerFactory(factory);
      server.start();
      System.out.println("The program can be stopped using <ctrl>+<c>");
      public static void main(String[] args) {
      step1SimpleServer();
    StepByStepServer class
    package main;
    import java.io.File;
    import java.io.FileOutputStream;
    import java.util.Properties;
    import com.sap.conn.jco.ext.DestinationDataProvider;
    import com.sap.conn.jco.ext.ServerDataProvider;
    public class StepByStepServer
        static String SERVER_NAME1 = "SERVER";
        static String DESTINATION_NAME1 = "ABAP_AS_WITHOUT_POOL";
        static String DESTINATION_NAME2 = "ABAP_AS_WITH_POOL";
        static
            Properties connectProperties = new Properties();
            connectProperties.setProperty(DestinationDataProvider.JCO_ASHOST, "ls4065");
            connectProperties.setProperty(DestinationDataProvider.JCO_SYSNR,  "85");
            connectProperties.setProperty(DestinationDataProvider.JCO_CLIENT, "800");
            connectProperties.setProperty(DestinationDataProvider.JCO_USER,   "farber");
            connectProperties.setProperty(DestinationDataProvider.JCO_PASSWD, "laska");
            connectProperties.setProperty(DestinationDataProvider.JCO_LANG,   "en");
            createDataFile(DESTINATION_NAME1, "jcoDestination", connectProperties);
            connectProperties.setProperty(DestinationDataProvider.JCO_POOL_CAPACITY, "3");
            connectProperties.setProperty(DestinationDataProvider.JCO_PEAK_LIMIT,    "10");
            createDataFile(DESTINATION_NAME2, "jcoDestination", connectProperties);
            Properties servertProperties = new Properties();
            servertProperties.setProperty(ServerDataProvider.JCO_GWHOST, "binmain");
            servertProperties.setProperty(ServerDataProvider.JCO_GWSERV, "sapgw53");
            servertProperties.setProperty(ServerDataProvider.JCO_PROGID, "JCO_SERVER");
            servertProperties.setProperty(ServerDataProvider.JCO_REP_DEST, "ABAP_AS_WITH_POOL");
            servertProperties.setProperty(ServerDataProvider.JCO_CONNECTION_COUNT, "2");
            createDataFile(SERVER_NAME1, "jcoServer", servertProperties);
        static void createDataFile(String name, String suffix, Properties properties)
            File cfg = new File(name+"."+suffix);
            if(!cfg.exists())
                try
                    FileOutputStream fos = new FileOutputStream(cfg, false);
                    properties.store(fos, "for tests only !");
                    fos.close();
                catch (Exception e)
                    throw new RuntimeException("Unable to create the destination file " + cfg.getName(), e);
    Regards

  • More General Questions.

    Hi Guys,
    1. Is it better to "close" a production order or "technically complete" it after the production is complete? Will it make a difference?
    2. What dates are more important for tracking in a production order? Basic Dates or Actual Dates?
    3. I am planning on implementing cost center accounting to capture costs from the machine and labor times given in the routing. Is there any easier method?
    Thanks in advance for your help.
    Will give points.

    Dear Rao,
    1. Is it better to "close" a production order or "technically complete" it after the production is complete? Will it make a difference?
    It is not the question of which is better, they serve different purposes.
    TECO - The production order will not be relevant for MRP. Settlement can be done.
                Confimations and GR/GI of production order still possible.
    CLSD - The production order will not be relevant for MRP. If goods movements have taken place and / or activity booking done, then "closing" is <b>not possible</b> without settlement done. Confimations and GR/GI of production order <b>not possible</b>..
    2. What dates are more important for tracking in a production order? Basic Dates or Actual Dates?
    Both of the dates are important and have their roles to play.
    Basic dates are important for scheduling.
    Actual dates are important for leadtime scheduling and consequently capacity planning.
    3. I am planning on implementing cost center accounting to capture costs from the machine and labor times given in the routing. Is there any easier method?
    Your plan is nice and cool.
    Hope this will help you, please confirm.
    Regards,
    Angshuman Kar

  • One more fb question......

    If I deleted my messages from my blackberry with someone on facebook does it delete the message from their
    messages as well?  I know this sounds like a stupid question but I just don't know the answer and need to....

    I'm not sure you understood or if I made myself clear. Or perhaps I'm missing a vital detail in your implementation.
    I'm talking about the cast to E in this line:if (node.item.equals((E) object)) {Object.equals() takes a parameter of type Object. So the cast to E is superfluous. That cast is what's causing the warning. You remove the cast => no more warning => you can remove the SuppressWarnings annotation.
    Unless your E's have an overloaded equals() that takes an argument of type E. In that case you'll have to live with it.

  • One more generics question

    One more dumbshit generics question...
    Is there a way to do this without the warnings or the @SuppressWarnings({"unchecked"})
       * Returns the index of the last occurrence of the specified element in this
       * list, or -1 if this list does not contain the element.
      //@SuppressWarnings({"unchecked"})
      public int lastIndexOf(Object object) {
        int i = 0;
        int last = -1;
        for(Node<E> node=this.head.next; node!=null; node=node.next) {
          if (node.item.equals((E) object)) {
            last = i;
          i++;
        return(last);
    produces the warning
    C:\Java\home\src\linkedlist\LinkedList.java:313: warning: [unchecked] unchecked cast
    found   : java.lang.Object
    required: E
          if (node.item.equals((E) object)) {
                                   ^... remembering that List specifies +public int lastIndexOf(Object object);+ as taking a raw Object, not E element, as I would have expected.
    Thanx all. Keith.
    PS: Crossposted from the tail of http://forum.java.sun.com/thread.jspa?messageID=10225418&#10225418
    which nobody has answered, I presume because the thread is marked as "answered".

    I'm not sure you understood or if I made myself clear. Or perhaps I'm missing a vital detail in your implementation.
    I'm talking about the cast to E in this line:if (node.item.equals((E) object)) {Object.equals() takes a parameter of type Object. So the cast to E is superfluous. That cast is what's causing the warning. You remove the cast => no more warning => you can remove the SuppressWarnings annotation.
    Unless your E's have an overloaded equals() that takes an argument of type E. In that case you'll have to live with it.

  • Query Design/Implementation Question

    Hi,
    I have to query the database based on different input values from a JSP page. So, A user can query the database based on one or more fields. My question to you is what would be an efficient way to write the queries or implement this using JDBC. Should I write PreparedStatements for every possible combination of the query fields. Should I write stored procedures ? I had problems with the PreparedStatement earlier and I still do, so just to keep my developement going I wrote a stored procedure. If you read my previous post you can read the whole story.
    So, this is more of a design question. Let the ideas flow.
    Any help or suggestion will be appreciated.
    Thanks,
    Prasoon

    Hi Justin,
    This I got from an earlier post on this forum and you said that doing this was a very bad idea. Why ? I am doing this just as a workaround to my current problem.
    So, basically I would have a temporary table for every query field in my JSP page. This table I would create in separate stored procedures and then finally do an AND to get the result ?
    This feels dirty to me too but can u suggest a better way ?
    Thanks,
    Prasoon
    stored procedure, temporary table, and result sets Nov 6, 2003 6:39 PM
    Reply
    Pls, Help me with the folloing questions:
    1. Is it possible to declare and use temporary tables in a stored procedure? How?
    2. Is it possible to return a result set, or recordset from a stored procedure? How?
    These might be a very basic one, but as a beginer in Oracle Databse, I am having hard time to find out good source of technical materials.
    Justin Cave
    Posts: 5,786
    OTN Member Since: Oct, 1999
    Re: stored procedure, temporary table, and result sets ( In Reply To : stored procedure, temporary table, and result sets ) Nov 6, 2003 7:17 PM
    Reply
    1) You certainly can declare and use temporary tables in a stored procedure. On the other hand, doing so strikes me as a manifestly bad idea, so I would strongly caution you not to. If you explain a bit about what you're trying to accomplish, I'm sure there are better ways.
    If you did want to create temporary tables in a stored procedure, you'd have to use dynamic sql, i.e.
    execute immediate 'create temporary table foo...'
    2) You can return resultsets from a stored procedure by declaring an OUT parameter which is a REF CURSOR.
    Justin
    Distributed Database Consulting, Inc.
    www.ddbcinc.com/askDDBC

  • More UPS questions

    Having read through a rather lengthy post earlier with regards to UPS within this topic, i thought id start a new one up. As i have a few additional questions. Sorry if some come across as rather newbie but its an area that iv never really looked into before.
    As of the late the power supply round here has been very poor, living out in the sticks doesn't help. We often have outages along with a low supply. Lights dim etc. I understand this does more harm then just a straight power outage as there is nothing worse then a electrical item not getting a full and healthy supply. Which is why i'm starting to think my little 4 socket surge protection bar is a little inadequate. Soon im going to be upgrading to a Mac Pro, which i will be implementing a Raid 0 which further more encourages me to get a UPS. Not only because of the value of the MP but raid arrays are more susceptible to damage in the event of power problems which is something i can certainly do with out.
    So im weighing up between the APC RS1000 or RS1500. AS Ned and others seem to highly rate these units. I am also considering the equivalent belkin units the 1000VA and 1500VA. (F6C1000eiTW-RK & F6C1500eiTW-RK) There is nothing really between the units on spec or price from what i can make out. Except i prefer the physical look of the Belkin units. Not that it makes much difference really. Is there any reason to steer away from the belkins, any horror stories? Or reasons why the APC units are better?
    How much runtime would i get from say a 1500VA unit, running a Mac Pro, 2.66, 4 Hard drives, 1900XT, 4GB Ram, hooked up to a 23" Cinema display. Also supporting a Netgear all in one modem/router/switch. And possibly some other light draw peripherals. Also leaving room for future expansion.
    My final questions, most of the UPS i have looked at have 6/8 IEC connectors on the back, as opposed to standard plug sockets. I can understand why this is so as servers etc have these style power plugs, but how can i plug my stuff straight into it. As in standard house hold items that have normal plugs on the end of all there leads. Like my router and my monitor. Do i need some sort of adapters to convert my plug sockets to a 3 pin IEC (kettle lead?) connections. Its baffled me a bit, probably a stupid question. But one that had to be asked. Thank you to everyone in advance for your input. Cheers Adam
    2.0 GHz PPC 970MP (G5), 3.5GB ram, 23" Cinema Display + PowerBook G4/1.5 15"   Mac OS X (10.4.7)  

    So, guessing you'd get around 15 minutes with the same setup with a 1500VA unit.
    That is fine, 15 minutes would give me ample time, and if i were not present at my machine i would rely on the UPS energy profile to shut the system down safely. Which i understand i can do. Using the USB interface that is on most modern UPS's. Clever stuff i like that feature.
    As for the D-type connectors on the back, you do get a number (anywhere from 2 to 4) of these cable to easily connect items like your Mac Pro and display.
    These included cables are they like a male kettle lead one end and female the other. So they can plug straight into the back of the mac pro? Or is it a cable that converts IEC to standard electrical socket. Which i can plug the standard mac pro power cable into this? I was under the impression the Mac pro didn'nt like being used with any think but its own power cable? Maybe thats an old wives tale. The only thing that uses a kettle lead is the mac pro. Everything else including my moniter which cable is hardwired into the back of the monitor has a standard 3 pin uk plug on the end. As you can see this area has me somewhat confused, as most house hold items now have built in wires with normal plugs on the end. So surely a decent UPS with 6/8 normal uk plug sockets on, would suit me better? if such a thing exists?
    Which is why i guess you have done this:
    For other items which require standard female socket I just made my own cables adapter cables to go from the D-type to a standard female into which I plug in a power board.
    Taken a normal power bar being 4/6 socket strip and wired an IEC connector to the bars lead instead of the standard plug? Do i understand you correctly there?
    Again sorry Ned for my stupidy with regards to this. Just seem to be having trouble getting my head round it. Cheers Pob
    2.0 GHz PPC 970MP (G5), 3.5GB ram, 23" Cinema Display + PowerBook G4/1.5 15"   Mac OS X (10.4.7)  

  • A few more Solaris questions

    I'm sure this isn't the best place to post this, but I currently have a file server running Solaris 11 with a raid-z2 pool and I'm building a new vmware server out of some parts I've managed to get some good deals on might I add.
    I'm building on a supermicro x8dt3-f board that has an LSI controller on board with a pair of xeon 5570's and 48gb ram. The processors and ram actually came from a sun blade that was tossed out for recycling, sadly the box had never been opened, but i got these for pennies on the dollar, so i'm happy
    I'd like to move the current Solaris file server into a VM on the new ESXi 5.1 host and passthrough the LSI controller.
    I've been reading, and reading and reading and i find the more i read, the more questions I have and the less clear some of the answers are getting.
    First, from what I gather, Solaris 11 has only been added to the supported guest list in ESXi with the recent esxi 5.1 version as I understand? So all should be fine here? Can someone confirm?
    second, i've read about issues with LSI controllers under solaris 11. Is this something that has been addressed in 11.1?
    Third, trying to find the best method to conver the physical system to virtual under ESXi
    The first thing I plan on doing is backing up my data from the pool, though it will be scattered across a few systems. Then I plan on exporting the pool to move the disks physically to the new controller in the VM. The question I have here, is will the share flags and permissions be retained when I import the pool? or do I have to redo all that?
    But then, what's the best method to move it to a VM? The one document I see come up the most is moving a physical solaris system into a zone on another system. Can it be transferred to the global zone? Could I do a new install in a VM, and move the existing install to the global zone, import my pool and call it a daY?
    Or do I dd the OS disk, convert the image and drop it into vmware, get the hardware working, and then import the pool?
    Or is there a better way? Has anyone got any online docs in mind that may help specifically with this migration? everything i'm finding is scattered, maybe i'm not looking for the right things but I could use some pointers if anyone has suggestions.
    I suppose I should note, i have it integrated with an Active directory, this is why i'm worried about permissions being retained when i import the pool
    I just want this to go as quickly and smoothly as possible, with as little headache as possible. it's my home setup, so realistically it takes the time it takes as long as things go smooth

    I know this may not be the answer you are looking for, but I think you are making it more difficult than it needs to be.
    One other option is to leave your Solaris Storage server on the bare metal of this new beast of a machine you are piecing together. Then, use VirtualBox 4.2.6 which is support quite well in Solaris to run whatever virtual machines you where intending ESXi to be used for.
    This way you have the fastest possible storage setup without the issues of hardware passthrough. And the fast storage now benefits the VMs running on it. Not to mention the other neat options now of running lzjb compression for the VMs. either using zvols for the VMs, or just virtualbox vdi files sitting on a compressed zfs filesystem.
    As far as the LSI 1068E controller goes, their website only shows drivers for Solaris 10. So unless Solaris 11 has the drivers built in, you may not be able to use that controller. Believe me I feel your pain in this one.. I have the d#$$!est time finding good SAS HBAs for Solaris 11.1 and the few I did find had questionable drivers. Areca 1320 cards seem to work well, as do Adaptec 64xx and 68xx raid cards. LSI has a new line that supposedly works with Solaris 11.
    My advice is to try a baremetal install of Solaris 11.1 on the new machine and see if you can recognize drives on the LSI controller, if not then use the 6 onboard SATA ports if that is enough for the drives. Otherwise purchase an Areca 1320 which is only like 230 bucks for the 8 port version. http://www.newegg.com/Product/Product.aspx?Item=N82E16816151116R

  • More JTextPane Questions

    Hi Guys
    I posted this question on the Java Ranch forums yesterday evening, but I haven't received a response yet, so I figured that I'd try these forums as well. You can view the other thread here; http://www.coderanch.com/t/554155/GUI/java/JTextPane-Questions.
    We're trying to build a simple WYSIWYG HTML editor using a JTextPane. I've used Charles Bell's example, available here; http://www.artima.com/forums/flat.jsp?forum=1&thread=1276 as a reference. My biggest gripe with it at the moment is that bullets aren't working as I would expect them to. If I highlight text and click the "Bullet" button, I want a bullet to be placed immediately before the highlighted text, on the same line. If I try to do this, my code is creating bullets, but it moves the selected text one line down. I've gone through the Oracle tutorial on text components, but I couldn't find anything that helped me with this particular issue.
    Also, if I copy and paste text into my JTextPane, the pasted text always appears on a new line (a new paragraph tag in the actual HTML). Is there a way to prevent the JTextPane from creating new paragraphs?
    Lastly, I'm flabbergasted as to why my buttons actually work. I can't see anything that explicitly links my buttons to my HTMLEditorKit or my JTextPane. Short of a little voodoo man living under my keyboard, how on earth do my buttons/actions know that they should update the JTextPane?
    The code is as follows;
    package myhtmleditor;
    import java.awt.BorderLayout;
    import java.awt.FlowLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import javax.swing.Action;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTextPane;
    import javax.swing.SwingUtilities;
    import javax.swing.text.StyledEditorKit;
    import javax.swing.text.html.HTML;
    import javax.swing.text.html.HTMLDocument;
    import javax.swing.text.html.HTMLEditorKit;
    public class Main {
        public static void main(String[] args) {
            SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                    JFrame frame = new JFrame("My HTML Editor");
                    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                    frame.setSize(500, 500);
                    frame.setLayout(new BorderLayout());
                    JPanel buttonsPanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
                    HTMLDocument document = new HTMLDocument();
                    final JTextPane htmlEditorPane = new JTextPane(document);
                    Action bold = new StyledEditorKit.BoldAction();
                    Action italic = new StyledEditorKit.ItalicAction();
                    Action underline = new StyledEditorKit.UnderlineAction();
                    JButton boldButton = new JButton(bold);
                    boldButton.setText("Bold");
                    buttonsPanel.add(boldButton);
                    JButton italicButton = new JButton(italic);
                    italicButton.setText("Italic");
                    buttonsPanel.add(italicButton);
                    JButton underlineButton = new JButton(underline);
                    underlineButton.setText("Underline");
                    buttonsPanel.add(underlineButton);
                    HTMLEditorKit.InsertHTMLTextAction bulletAction = new HTMLEditorKit.InsertHTMLTextAction("Bullet", "<ul><li> </li></ul>", HTML.Tag.BODY, HTML.Tag.UL);
                    JButton bulletButton = new JButton(bulletAction);
                    bulletButton.setText("Bullet");
                    buttonsPanel.add(bulletButton);
                    JButton printButton = new JButton("Print to Console");
                    printButton.addActionListener(new ActionListener() {
                        public void actionPerformed(ActionEvent e) {
                            System.out.println(htmlEditorPane.getText());
                    buttonsPanel.add(printButton);
                    htmlEditorPane.setContentType("text/html");
                    HTMLEditorKit editorKit = new HTMLEditorKit();
                    htmlEditorPane.setEditorKit(editorKit);
                    frame.add(buttonsPanel, BorderLayout.NORTH);
                    frame.add(new JScrollPane(htmlEditorPane), BorderLayout.CENTER);
                    frame.setVisible(true);
    }Thank you for your input.
    Cheers,
    rfnel

    See how the bullet action changes HTML (compare getText() result before and after the bullet applying. It seems you need more smart way of adding bullets.
    Answer some questions if user selects whole paragraph should the <p> tag be removed and replaced with <li>? If user selects just one word in the paragraph and pressed bullet should the whole paragraph be bulleted?
    When you copy something you clipboard contains something like this "<html><body> content</body></html>". Try to override read() method of your kit (or Reader) to skip the main tags.
    For components see ObjectView class source.
    In fact when HTMLDocument is created from String components classes are created and stored in attributes of Elements. Then during rendering ComponentView extension (ObjectView) creates components.

Maybe you are looking for