Server-side or past-query resultset processing

Hi everyone :)
I have a question about efficiency. Basically, the application that I am writing retrieves resultsets from a data source. It is possible for an end-user to request that formatting be applied to certain columns in the resultset (eg: 1234 becomes $1234.00). As I see it, I have two options;
1. Apply the formatting in the SQL statement, thereby causing the formatting to occur on the server-side. The problem that I see with this is that formatting commands are different for every DBMS, and some don't even have them.
2. Retrieve the resultset in 'raw' form and apply java.text.Format subclasses to the resultset after it has been returned from the database (using update*(...) methods). This would 'standardise' the formatting, but is this efficient? My resultsets could be very large, so I am concerned about processing time.
Any opinions/suggestions would be greatly appreciated.
Thank you for your time. :)
Ben Deany

Well, not necessarily, no... my application may be on a client machine, sending requests to a remote data source. But point taken, it is a case of deciding which will be faster - so your question neatly sums up the problem.
And when I said that I was thinking about using the "update*" methods I was referring to the ResultSet methods. I realise that this is not a great solution; firstly because of potential overheads navigating the resultset, and secondly because it's dangerous - there is a chance the the database could get written back to...
So given that, the best solution might be to convert the ResultSet to a list of collection (or something similar) and then apply formatting to the values. (?)
That does require two loops (once over the ResultSet to convert it to a List, and a second one to apply formatting).
Ben

Similar Messages

  • How to create an object alive all the time on a server side

    Hi,
    I work on an Intranet with J2EE technologies. I need an object to do several tasks in background on the server side. Like start scheduled processes on a database and files, stocked on the server. What is the way to do this. I thought to use the JNDI by declaring the object in the Deployement Descriptor, and to manage a timer within.
    I don't know if this works.
    Anyway, my question is how to create an object on the server that is ALIVE ALL THE TIME and visible by the other objects running in the same VM.
    Thank's.

    This may not be the correct design, but I had success doing the following:
    1. Create an Stateless EJB that does a task, i.e. update a database table.
    2. Create a subclass of java.util.TimerTask to call the EJB methods.
    3. Kick off the TimerTask from a servlet.init method.
    Seems to work pretty well to do scheduled tasks, such as refreshing lookup tables. I would imagine the same could be done with an MBean, but I haven't had time to fully understand JMX yet. (It's on the list).
    As for event driven procedures, that can be done through a servlet interface.
    You may also wish to review a scheduler here: http://www.part.net/quartz.html. Note, I have NOT even looked at it yet, so I have no clue if it's any good. But, it is on my list of tools to evaluate (that's a long list) someday when my head's above water. Have a look, and caveat emptor.
    Hope this helps,
    Perry Tew

  • The query locator has timed out on the server side.

    Hi
    I am getting the error:The query locator has timed out on the server side.
    What to do now?
    AG

    Hi
    Are you using Salesforce.com for creating reports?
    When joining large-sized tables, you may run into a query locator time out
    error. The query locator is a server-side cursor generated by Salesforce.com
    and is used to navigate the query result. It will automatically expire in 15
    minutes without any activity.
    In the case of joining two tables, the report processing engine will read one
    table partly, and then it will process the other table. If the processing time is
    longer than 15 minutes, the Crystal Reports Salesforce.com Driver will try to
    read the rest of the records in the first table and the cursor in that query will
    time out. In the case of joining multiple tables, the chance of running into a
    query locator time issue is higher as the report processing engine might have
    to return to handle the first table after finishing processing other tables,
    increasing the possibility of a query locator time out error in the first table.
    If you run into query locator time out issue, we recommend that you add
    filters into your report to reduce the amount of records you fetch from
    Salesforce.com.
    However, if that is not possible, you can try to reverse the link order in the
    case of joining two tables. For example, you linked table A to table B, then
    you can try to link table B to table A.
    Hope this helps!!
    Regards
    Sourashree

  • Copy and paste images in server side folder

    Hi ,
    I want to copy & paste the images in server side folder .
    Have you any idea than please send me.
    Thanks.
    Have a nice day

    Client side: Reading/Sending file contents
    FileInputStream in = new FileInputStream(filePath+"\\"+fileName);
    int size = in.available();
    byte data[] = new byte[size];
    in.read(data,0,size);
    in.close();
    //calling remote method for sending file
    uploadFile(fileName,data);
    Server side method
    public boolean uploadFile(String fileName,byte []data) throws IOException, ServerNotActiveException {
            FileOutputStream out = new FileOutputStream(fileName);
            out.write(data);
         out.close();
    }

  • Copy & paste the images in server side folder

    Hi ,
    I want to copy & paste the images in server side folder .
    Have you any idea than please send me.
    Thanks.
    Have a nice day

    [http://java.sun.com/docs/books/tutorial/essential/io/].

  • VLV & Server Side Sort Query with ODSEE 11g

    Hi
    We are trying to integrate Microsoft FIM with ODSEE.. When FIM does a Full Import it with VLVControl and SortControl ON it gets the following error
    1100 objects were returned on import, exceeding the configured page size in the Run Profile of 500. Only the first 500 objects were processed. Import aborted.
    Now looking at ODSEE Logs it does the following
    [27/Mar/2015:08:29:40 +1100] conn=1 op=1 msgId=402743 - SRCH base="<BASENAME>" scope=2 filter="<FILTER NAME>" attrs="<LONG LIST OF ATTRIBUTES>"
    [27/Mar/2015:08:29:40 +1100] conn=1 op=1 msgId=402743 -  SORT dn
    [27/Mar/2015:08:29:40 +1100] conn=1 op=1 msgId=402743 -  VLV 0:499:0:0 1:40 (0)
    [27/Mar/2015:08:29:40 +1100] conn=1 op=1 msgId=402743 -  SORT dn
    [27/Mar/2015:08:29:40 +1100] conn=1 op=1 msgId=402743 -  VLV 0:499:0:0 1:4 (0)
    [27/Mar/2015:08:29:40 +1100] conn=1 op=1 msgId=402743 -  SORT dn
    [27/Mar/2015:08:29:40 +1100] conn=1 op=1 msgId=402743 -  VLV 0:499:0:0 1:6412 (0)
    [27/Mar/2015:08:29:41 +1100] conn=1 op=1 msgId=402743 -  SORT dn
    [27/Mar/2015:08:29:41 +1100] conn=1 op=1 msgId=402743 -  VLV 0:499:0:0 1:685 (0)
    [27/Mar/2015:08:29:41 +1100] conn=1 op=1 msgId=402743 -  SORT dn
    [27/Mar/2015:08:29:41 +1100] conn=1 op=1 msgId=402743 -  VLV 0:499:0:0 1:232 (0)
    [27/Mar/2015:08:29:41 +1100] conn=1 op=1 msgId=402743 - RESULT err=0 tag=101 nentries=1100 etime=1
    [27/Mar/2015:08:29:55 +1100] conn=3 op=2 msgId=402744 - UNBIND
    Ofcourse as we can see it is returning 1100 but FIM is expecting only 500.. Microsoft suggests that VLV index and server side sort is not correctly configured on our end. What could be going wrong here? We have both the supported controls ON in ODSEE. I have created a vlvindex entry in dse.ldif matching the SORT dn and vlvbase,vlvscope and vlvfilter
    Not well versed with VLV and sort index..

    Hello,
    Could you try to perform an equivalent search with the ldapseatch that comes with DSEE and check how many entries are returned ?
    See ldapsearch(1) (Sun Java System Directory Server Enterprise Edition 6.2 Man Page Reference) , option -G
    If the ldapsearch returns more than 500 entries, I would encourage you to contact the Oracle Support.
    -Sylvain
    Please mark this response as correct or helpful when appropriate to make it easier for others to find it

  • What assembly is the class Microsoft.Office.Server.Search.Query.Pipeline.Processing.OpenSearchReaderProducer in?

    Hi All,
    I work with Result Source in SP 2013 which is configured to use OpenSearch protocol. When I create KeywordQuery and execute the query with SearchExecutor the below error is thrown and log at ULS
    Microsoft.Office.Server.Search.Query.Pipeline.Processing.OpenSearchReaderProducer : Unable to complete OpenSearch communication. System.NullReferenceException: Object reference not set to an instance of an object.     at Microsoft.Office.Server.Search.Query.Pipeline.Processing.OpenSearchReaderProducer.ReadAccountAuthCredentials(AuthenticationInformation
    authInfo, String& username, String& password)
    This code does work on certain farm setting, but for a particular setting like
    + Search Admin, Crawler, Content Processing, Analytics Processing is on 1 server
    + Query Processing, Index Partition is on 1 server
    I've tried to find the assembly which has class OpenSearchReaderProducer to decompile and see what could causing null exception but I cannot find that assembly, does anyone know where it is or could suggest a better solution for above issue?
    Appreciate all the comments
    Thank you
    Steven

    Hi Steven,
    According to your description, my understanding is that you got an error when you tried to use Result Source in SharePoint 2013.
    You can set it to anonymous search, then check whether it works.
    Here is a similar post for you to take a look at:
    http://social.technet.microsoft.com/Forums/en-US/26fe7715-e4b3-404a-bcb7-6f6f3ff1ea62/opensearch-search-has-encountered-a-problem-that-prevents-results-from-being-returned?forum=sharepointsearch
    I hope this helps.
    Thanks,
    Wendy
    Wendy Li
    TechNet Community Support

  • What is the best way to read, process, and write an Excel File Server side...SQL Server Agent Job

    So I was using dynamic Excel commands to open and save as using...
    Microsoft.Office.Interop.Excel.Application
    and
     workbook.SaveAs(StringDestinationFile, XlFileFormat.xlExcel8, Type.Missing, Type.Missing, Type.Missing, Type.Missing, XlSaveAsAccessMode.xlExclusive, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
    which worked all fine and dandy client side. Then when I attempted to create a SQL Server Agent Job, this failed as a result of SQL Server side not being able to execute dynamic Excel commands.
    So do I need to therefore try and do this function via Microsoft.ACE.OLEDB.12.0 commands? And where can I find the commands and syntax to open and save as? I have to Open a .xlsx file, save it as a .xls file, and then open this newly created .xls file and
    then save it as a .csv file.
    Thanks for your review and am hopeful for a reply.
    ITBobbyP85

    I think you might be over complicating things.
    You can use SSIS with Excel Source/Destination connections to read in, or output to an excel sheet/file.

  • Server side install of 9204 on AIX5L

    Hello,
    Has anybody been able to get the Server side install of 9204 on AIX5L to work. In particular, I have been able to successfully complete the 92028 install. I then did the 9204 patch install. When I went to deploy, I got an RTC-5301 service not available error. I ran the service_doctor.sql and it replied that all of the objects were present and valid, but that the service was not started. I then ran start_service.sql which replied "Not available". I have deinstalled and reinstalled three times with the same result.
    Any help would be greatly appreciated.
    Thanks,
    Carl

    Cutting and pasting from a previous post on the similar topic:
    1. I don't think it's your case, but... - if you updated the DB from 9.2.0.1 to 9.2.0.4 than take a look at the metalink note 257687.1 ( http://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=257687.1 - you have to have a metalink log-in to access the note )
    2. In the directory <OWB_HOME>/owb/rtp/sql there are runtime diagnostic queries. first try show_service.sql to check if the rt service is running. If not, try to start it manually by running start_service.sql
    3. Finally, could you take a look whether a job
    wb_rti_service_job.check_service(1);
    has been submitted by the runtime repository owner?
    Connect as runtime repository owner, and execute:
    select job, what
    from user_jobs
    Also, can you verify the number of background jobs that may run in the
    database (default value is 10)? Run as system:
    select value
    from v$parameter
    where name = 'job_queue-processes'
    If the first query returns the wb_rti_service_job.check_service(1); in
    the what, and the second query returns a value greater than 1 (hopefully
    10), then you could connect as the runtime repository owner and manually
    kick off the job that you retrieved by using:
    exec dbms_job.run(<job number you retrieved in the first query>)
    Regards:
    Igor

  • [Execute SQL Task] Error: Executing the query "DECLARE_@XMLA nvarchar(3000) ,__@DateSerial nvarch..." failed with the following error: "Incorrect syntax near '-'.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly,

    Hi
    DECLARE @XMLA nvarchar(3000)
    , @DateSerial nvarchar(35);
    -- Change date to format YYYYMMDDHHMMSS
    SET @DateSerial = CAST(GETDATE() AS DATE);
    --SELECT @DateSerial
    Set @XMLA = 
    N' <Batch xmlns="http://schemas.microsoft.com/analysis services/2003/engine">
     <ErrorConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2"
    xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200"
    xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200">
    <KeyErrorLimit>-1</KeyErrorLimit>
    <KeyNotFound>IgnoreError</KeyNotFound>
    <NullKeyNotAllowed>IgnoreError</NullKeyNotAllowed>
     </ErrorConfiguration>
     <Parallel>
    <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2"
    xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200"
    xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300">
     <Object>
     <DatabaseID>MultidimensionalProject5</DatabaseID>
     <CubeID>giri</CubeID>
     <MeasureGroupID>Fact Internet Sales</MeasureGroupID>
     </Object>
     <Type>ProcessFull</Type>
     <WriteBackTableCreation>UseExisting</WriteBackTableCreation>
     </Process>
      </Parallel>
    </Batch>';
    EXEC (@XMLA) At SHALL-PCAdventureWorksDw ;
     iam executive the    query when iam getting below error.
      [Execute SQL Task] Error: Executing the query "DECLARE
    @XMLA nvarchar(3000)
    , @DateSerial nvarch..." failed with the following error: "Incorrect syntax near '-'.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set
    correctly, or connection not established correctly. 
     how to solve this error;
     please help me

    What are you trying to do? What sort of data source is  SHALL-PCAdventureWorksDw?
    When you use EXEC() AT, I would execpt to see an SQL string to be passed to EXEC(), but you are passing an XML string????
    If you explain why you think this would work in the first place, maybe we can help you.
    Erland Sommarskog, SQL Server MVP, [email protected]

  • Multiple room management -- best practice -- server side http api update?

    Hi Folks, 
    Some of the forum postings on multiple room management are over year old now.  I have student/tutor chat application which has been in the wild for 5 months now and appears to be working well.  There is a single tutor per room, multiple chats and soon to be a whiteboard per student, which is shared with the tutor in a tabbed UI. 
    It is now time to fill out the multiple tutor functionality, which I considered and researched when building, but did not come to any conclusions.   I'm leaning towards a server side implementation.  Is there an impending update to the http api?
    Here is what I understand to be the flow:
    1) server side management of who is accessing the room
    2) load balance and manage the room access 1 time user and owner session from the server side
    3) for my implementation, a tutor will need to login to the room, in order for it to be available
    4) Any reconnection would in turn need to be managed by the server side, and is really a special case of room load balancing.
    My fear is that at some point I'm going to need access to the number of students in the room or similar and this is not available, so that I'll need client functionality, which will need update the server side manager.
    As well, I'm concerned about delays on the server side access to which might create race conditions in a re-connect situation.  User attempts to reconnect, but server side manager thinks that the user is already connected.
    Surely this simple room management has been built, does anyone have any wisdom they can impart?  Is there any best practice guidance or any samples?
    Thanks,
    Doug

    Hi Raff, Thanks a ton for the response.
    I wasn't clear on what I was calling load balancing.  What I mean by this is room assignment for student clients.  We have one tutor per room.  There are multiple students per room, but each is in their own one-on-one chat with the tutor.
    I'm very much struggling with where to do the room assignment / room managemnt, on the server side or on the client side (if that is even possible).  In my testing it is taking upwards of 10 seconds minimum to get a list of rooms (4 virtually empty rooms) and to query the users in a single room (also a minimum of users/nodes in the queried room).   If after this point, I 'redirect' the student to the least full room, then the student incurs the cost of creating a new session and logging into the room.  As well I intend to do a bit of xml parsing, and other processing, so that 10 seconds is likely to grow.
    Would I see better performance trying to do this in the client?
    As far as the server side, at what point does a room go to 'not-active'?
    When I'm querying the roomList, I am considered one of the 'OWNER' users in the UserLists.  At what point can it be safe to assume that I have left the room? 
    Is there documentation on the meaning and lifecycle of the different status codes?  not-active,  not-running, and ok?  Are there others?
    How much staleness can I expect from the server-side queries?
    As far as feature set, the only thing that comes to mind is xpath and or wild card support for getNode() but i think this was mentioned in other posts.
    Regarding the reconnection issues, I am timing out the student after inactivity, and this is probably by and large the bulk of my reconnect use cases.  This and any logout interaction from the student presents a use case where I  may want reassign the student return to the same room as before.  I can envision scenarios of a preferred tutor if available etc.  In this case, I'll need to know list of rooms.  In terms of reconnection failover, this is not not a LCCS / FMS issue.
    Thanks again for responding.

  • Server side validation problem

    Hi,
    Trying to do server-side validation for a table with usernames, where if the username exists, a simple message in red is posted back to the JSP.
    I was only able to get it to work if 1 (out of about 23) usernames was entered, because for some reason my results set, while being looped, was only returning 1 value all the time.
    My servlet looks like the following, with a few if conditions to trigger the RequestDispatcher object appropriately.
    public class ChangeControlUserAcctServletSPCall extends HttpServlet{
    private Connection connection;
        public void doGet(HttpServletRequest request,
                          HttpServletResponse response)
                          throws IOException, ServletException{
    //req parameters from html/jsp form(Admin) page
    String username = request.getParameter("user_name_fld");
    String userpwd = request.getParameter("user_pwd_fld");
    String userrole = request.getParameter("user_role_fld");
    String useremail1 = request.getParameter("usr_email1");
    String useremail2 = request.getParameter("usr_email_suf");
    String userfinemail = useremail1+useremail2;
    String userbranch = request.getParameter("user_branch");
    String errmsg = "";
    String usernameret = "";
    //boolean userexists = false;
    HttpSession session = request.getSession();
    try {
    Class.forName("oracle.jdbc.driver.OracleDriver");
       String dbURL = "jdbc:oracle:thin:@xxx.xxx.xx.xxx:1521:SID";
       String usernm = "aaa_dfg";
       String pwd = "********";
       connection = DriverManager.getConnection(dbURL, usernm, pwd);
                   Statement stmt = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
                   String prepquer = "select user_name from users";
                   PreparedStatement preps = connection.prepareStatement(prepquer);
                   ResultSet rst = preps.executeQuery();
                while (rst.next()) {
                 usernameret = rst.getString(1);
    if (usernameret.equals(username)){
            errmsg = "<font face='arial' size='2'>This username</font>, <font face='arial' color='red' size='2'><b> " +username+ " </b>,already exists. <br>"
                      + "Please enter another username.</font>";
            session.setAttribute("message", errmsg);
         RequestDispatcher dispatcher =
              getServletContext().getRequestDispatcher(
                   "/chngctrl/admin/change_ctrl_users.jsp");
            dispatcher.forward(request, response);
    else {
    CallableStatement cstmt = connection.prepareCall("{call cctrl_passwords_proc (?,?,?,?,?)}");
       cstmt.setString(1,username);
       cstmt.setString(2,userpwd);
       cstmt.setString(3,userfinemail);
       cstmt.setString(4,userrole);
       cstmt.setString(5,userbranch);
       cstmt.executeUpdate();
       System.out.println("SQL Stmt: " +cstmt);
                   rst.close();
                   stmt.close();
      if (username==null || username.equals("") || username.equals(" ")) {
         RequestDispatcher dispatcher =
              getServletContext().getRequestDispatcher(
                   "/chngctrl/admin/change_ctrl_users.jsp");
            dispatcher.forward(request, response);
            System.out.print("first request");
          else if (usernameret.equals(username)){
         errmsg = "This username, <font face='arial' color='red'>" +username+ "already exists. <br>"
           + "Please enter another email address.</font>";
            session.setAttribute("message", errmsg);
                    RequestDispatcher dispatcher =
                         getServletContext().getRequestDispatcher(
                              "/chngctrl/admin/change_ctrl_users.jsp");
                       dispatcher.forward(request, response);
            System.out.print("first request");
        else {
       RequestDispatcher dispatcher =
              getServletContext().getRequestDispatcher(
                   "/chngctrl/insert_users_success.jsp");
            dispatcher.forward(request, response);
            System.out.print("2nd request");
        public void doPost(HttpServletRequest request,
                           HttpServletResponse response)
                           throws ServletException, IOException {
         System.out.println("working here doPost method on Approval Servlet?");
            doGet(request, response);
    // final curly brace
    }Any feedback would be appreciated if you see something glaringly wrong, or just wrong in general! : )
    Thanks!

    Had one (a WHERE clause) in there and later took it
    out, but I don't think I'd originally applied it
    correctly any way.Apparently not.
    >
    Are you saying just run a WHERE clause equivalent to
    the username request parameter, then make some
    boolean value that if it matches (and the boolean's
    true), reject it with some message? I'll admit that I didn't read your code (too much trouble), but it sounds like you're trying to validate a given user who has supplied a username (and maybe a password?) that's unique to them. You query your database for that username. If it doesn't appear, they can't come in. If the username appears but the password is wrong, they can't come in. If both match, you give them a credential or token of some kind that tells all your other pages "This person is all right."
    Therefore skipping over how ever many or few users are in there?You only want to transfer the one you need over the wire, and you only want to check the one that has a chance of matching the password. Why bother with a million other users if the username is unique?
    This has very few, but yeah, that's a better idea to
    trim that down were this (I don't see it doing so,
    but who knows, right?) ever to grow.I'd get it deployed and working before I'd worry about it growing.
    %

  • Server-Side Wins with Shared Maps

    We are using shared maps/publication items in our solution. Using this approach, the MGP process composes the set of publications items once for each group of users instead of once for each user. This helps a great deal in reducing MGP-compose times.
    What we are looking to implement however is server-side conflict resolution with shared maps. Oracle does not support this by deafult, so we were told write custom conflict resolution for this to work.
    As it stands now, we have written custom DML for the conflict resolution. However, in the apply-phase we are only given the group-id for the current sync user. What we need, however, is the client-id of the current sync user.
    Using the client-id, we can check to see if the client (and not the entire group) has any dirty records in the out-queue. If there are dirty records, then the server wins and the conflict-records are not applied.

    shared items have the same selection criteria for all users (ie: no data subsetting). Therefore the same data is composed and placed in the out queue for each user that is part of the group.
    I assume you are trying to check if there is a copy of the incoming record waiting to go to the the user, so you can compare the data on update. The problems you may have with this are
    1) data being present in the out queue (or not) depends as much on when the last compose ran, as the fact that the data has changed (can you hand on heart guarantee that the compose will have run if the user sends an update within a half an hour of the server being changed.
    2) the same record (because it is shared) may have been downloaded to a number of different clients. What will you do if they all send back updates?
    normally shared items are used for reference data (ie: static), but if you want to use them in this way it may be better to do your conflict tests against the actual underlying data, rather than what is stored in the MGP temporary tables. This will provide more consistent results as it does not rely on the timing of the compose process, and will be consistent for each user transaction
    You know which publication item is being processed. From mobileadmin.C$all_publications you can pick up the schema name, object name and template query. You can then use this to compare the current server data against the incoming data

  • Calculation on server side in Sharepoint Online

    Hi,
    I'm searching for a solution to make the calculation on server side in Sharepoint Online, because CAML-Query don't have aggregation functions like sum.
    My Problem:
    I have 3 Lists in Sharepoint Online ("Projects", "Timesheet" , "Project Rates").
    The "Projects" list has the columns "Title" , "Amount" , "Invoiced" (this Value should calculate dependent on the Timehseet Entries multiplied with the rate for that specific Project and Employee).
    The "Timesheet" list has the columns "Time needed" , "Project" , "Employee".
    The "Project Rates" list has the columns "Project" , "Employee" , "Rate".
    In the Timesheet list I'll sum the column "Time needed" GroupedBy "Project" and "Employee" and multiply this result with the column "Rate" from the "Project Rates" list,
    if the values of the columns "Project" and "Employee" from the "Project Rates" list are the same value as the columns from the "Timesheet" list.
    After that calculation a progress bar should display the percentage of "Amount"/"Invoiced". 
    At the moment I'm using Javascript for calculating the "Invoiced" value and displaying the progress bar in a column of the "Projects" list. 
    Now, I do not want to make the calculation on client side, because the iteration over the different lists brings the performance down.
    greets
    Patrick

    hi
    other options are to implement provider hosted app or regular WCF service in different server, which should communicate with SP online e.g. by using client object model or you will send data for calculation to them. It will move code execution to the server,
    but I'm not sure that it will make whole process faster.
    Blog - http://sadomovalex.blogspot.com
    Dynamic CAML queries via C# - http://camlex.codeplex.com

  • Needs a background webdynpro application running at the server side

    Hi All,
    We have a requirement wherein we need to have an application running all the time at the server side to capture the response coming from a web application. Based on the response that the application receives, it needs to update some backend R/3 tables.
    We are thinking of a webdynpro java application.
    Can anyone suggest what kind of application needs to be implemented here?
    And what  would be the steps required to run the application at the server side without calling the application.
    Thanks & Regards,
    Anurag

    Hi Robin,
    Thanks for the detailed explaination.
    This may sound silly to you but I've another doubt which is as follows:
    As you mentioned that the external web application will be sending requests to our Web service(in SOAP envelopes) and rest of the functionality can be  achieved by our web service.
    Actually, we are expecting only responses from the external web application. The thing is that we are sending the requests to the external web applications from our custom webdynpro application and in return the web application will be sending us 2 responses.
    First response would be back to our WD java application URL(to the browser in which WD java app is running) which would get the response and display some message based on the response.
    Second would be to this web service which you have just suggested. We are having two responses so that even if the browser in which the WD java application is running gets accidentally closed, the response from the external web application must get captured somewhere else and should not get lost in any case.
    So, now since we are only expecting the response from the web application and we do not want any requests from the web application to our web service; how is this possible?
    I am asking the above question because you have mentioned that the external web application has to request our Web service but we want is only this web service to capture the response coming from the Web application.
    Or is it like the web application will send us the response string as request string to our Web Service and the web service will capture these response parameters as request parameters from the web application and do the further processing.
    But in that case, we do not want any response to be sent by the Web Service to the external web application.
    Please suggest if this is possible.
    Once again, many thanks for the help so far.
    Thanks & Regards,
    Anurag

Maybe you are looking for

  • String and arraylist

    i have this code that retrieves files from a folder and displays them as an array. what i want to do is drop the .xxx extension from the files. i use this code and it works fine                String junk = "1220145678999345.abc";                Syst

  • Monitor not working with new mini

    I just bought a non-intel mini. I have a Princeton 17" crt monitor that is only a few years old. I used the included adapter, but my monitor is not recognizing the mini. Any ideas?

  • Validation for Cash payments

    hi experts, in our project the client needs a validation for FBCJ transaction for outgoing payments it will not allow more than 20,000/- except cash deposit in to bank(for this transaction it has to allow more than that amount). for this how to valid

  • Mobile dual monitor setup

    What is the best way to setup up dual monitors with a laptop?  I have different screens at home and at work and would like to be able to switch between them and having no second monitor.  One option I was considering was having multiple xorg.conf fil

  • Is there a function by name HTMLDB_LDAP.GET_USER_ATTRIBUTES?

    Hi, Is there a function by name HTMLDB_LDAP.GET_USER_ATTRIBUTES? Customer wants to get the DN of the user who was authenticated through SSO? Thanks in advance for any help on this. Regards, Rachel