Publication using Restful SDK

Hello All,
I am currently on BI 4.1 Sp2 and my requirement is as follows:
I need to setup a publication to external users (non BOBJ enterprise users). Each output will have data pertaining to an ID that the end user is entitled to see which I was able to achieve by Dynamic recepient option (by passing id and email id). But each user wants the report pdf output in different languages. So I want to write a code using SDK to pass the dynamic receipients - ID, email id and preferred language as parameters to the code/report and get the content delivered to email ids as pdf attachments in the language preferred by that user.
I hope I am clear. Basically its report bursting with different langauges to external users. Can you please suggest if it is even possible or not using SDK and if it is possible can you share a sample code for the same.
Thanks in advance.

Hi Raghu,
I believe we cannot use REST SDKs for passing the dynamic recipients in the Publication. The REST SDKs are not mature enough to handle/manipulate the publication present in the Enterprise. However, i think we can perform the basic task like scheduling or getting the publication object information through REST SDKs. The API Guide of REST SDKs, nowhere mentioned that how it works in case of publication.
I will do some more research & will post down my observations.
You can still try the full-fledged Publication SDKs which is still present with the BOE Java SDKs. Please refer the Business Intelligence platform Java SDK Developer guide & API references for get to know what we can do through BI Platform Java SDKs to handle Publications from this link.
Can you please provide mention your BI product version with servicepack & fix pack if any?
Thanks,
Shailendra

Similar Messages

  • Illegal argument error while performing hierarchy drill down using RESTful SDK

    As per SAP Web Intelligence RESTful web service SDK User Guide, trying to perform a drill on a webi report using a POST req as below -
    https://<serverName>:7555/biprws/raylight/v1/documents/<docID>/reports/<reportID>/driller/instructions
    Req body -
    <instruction type="Down">
        <elementId><VTable ID></elementId>
        <from>
            <drillElement>
                <id>DP0.DO6</id>
               <filterValue><filter value></filterValue>
            </drillElement>
        </from>
        <to>
            <drillElement>
                <id>DP0.DO7</id>
                <hierarchyId>DP0.DH1</hierarchyId>
            </drillElement>
        </to>
    </instruction>
    Below is the error I am getting in the response. Looks like some issue with the Request body. please suggest.
    400 Bad Request
    <error>
       <error_code>WSR 00102</error_code>
       <message>Illegal argument</message>
       <stack_trace>com.sap.webi.raylight.RaylightException: Illegal argument
    at com.sap.webi.raylight.context.Messenger.createException(Messenger.java:57)
    at com.sap.webi.raylight.actions.driller.DrillInstructionAction.throwInvalidBodyWithIllegalArgument(DrillInstructionAction.java:399)
    at com.sap.webi.raylight.actions.driller.DrillInstructionAction.execute(DrillInstructionAction.java:130)
    at sun.reflect.GeneratedMethodAccessor7014.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.sap.webi.raylight.actions.ActionInvoker.invokeWith(ActionInvoker.java:123)
    at com.sap.webi.raylight.actions.ActionDispatcher.invoke(ActionDispatcher.java:105)
    at com.sap.webi.raylight.RaylightServiceDriller.drill(RaylightServiceDriller.java:345)
    at sun.reflect.GeneratedMethodAccessor7013.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:173)
    at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:89)
    at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:164)
    at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:242)
    at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:242)
    at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:242)
    at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:242)
    at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:91)
    at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
    at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
    at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255)
    at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:113)
    at org.apache.cxf.transport.servlet.ServletDestination.invoke(ServletDestination.java:102)
    at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:464)
    at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:149)
    at com.sap.bip.rs.server.servlet.BIPServletController.invoke(BIPServletController.java:93)
    at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:148)
    at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:179)
    at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:103)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
    at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:159)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at com.businessobjects.sdk.actionfilter.WorkflowFilter.doFilter(WorkflowFilter.java:45)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:761)
    </stack_trace>
    </error>

    hello Rekha,
    1. First I guess that the red parts:
    <instruction type="Down">
        <elementId><VTable ID></elementId>
        <from>
            <drillElement>
                <id>DP0.DO6</id>
               <filterValue><filter value></filterValue>
            </drillElement>
        </from>
        <to>
            <drillElement>
                <id>DP0.DO7</id>
                <hierarchyId>DP0.DH1</hierarchyId>
            </drillElement>
        </to>
    </instruction>
    ... are in your real workflow, effectively replaced by significant values.
    2. then, thanks to the stack trace: this error should be thrown if DP0.DO6 is not used by <VTable ID>.
    Can you please check with [GET application/xml] .../raylight/v1/documents/<docId>/reports/<reportId>/elements/<VTable ID> ?
    3. Anyway, the error message thrown is totally not talkative and we'd better improve that. Which version are you using? 4.1 SP5 ?
    Thanks and regards,
    eric

  • SAP BO Report Scheduling and Save as report using Java SDK

    Hi All,
    We have a java product which is integrated with SAP BO using Java SDK and we have certain java screen through which we select report prompt values and webi report gets run.
    Now we want to give a functionality to save report to BO repository.
    When user select certain check box from java screen a separate copy of the webi report should get saved under default folder on BO repository.
    Also, we want user to choose the scheduling option from java screen only (and not the one which we use from BI Launchpad) due to certain access restriction. User does not have access to BI Launchpad. Only he can run report by selecting values through Java screen.
    If i need to create a separate screen for scheduling as well as saving webi report then also i am ok with it.
    P.S. i guess we need to work on Java SDK level. But could somebody please help me with the right direction?
    Let me know in case requirement is not clear.

    Hi Ketan,
    As you are on version BI 4.0 SP5 and would be migrating to BI 4.1, the best SDKs to use would be the Restful Webservices SDKs.
    You have the options to schedule a webi report with prompts as well as the save feature which you require.
    Please refer to the webi restful guides avialble at
    For BI 4.0 SP5
    http://help.sap.com/businessobject/product_guides/boexir4/en/xi4sp5_webi_restful_ws_en.pdf
    For BI 4.1 SP4
    http://help.sap.com/saphelpiis_sbo41sp4wi-sdk/frameset.htm
    Refer to the below blog to understand the Restfull Webservices SDKs.
    http://scn.sap.com/community/restful-sdk/blog/2013/09/07/scripting-web-intelligence-the-restful-raylight-web-services--learing-it
    More blogs on Rest are available at
    http://scn.sap.com/community/restful-sdk/content#filterID=contentstatus%5Bpublished%5D~objecttype~objecttype%5Bblogpost%5D
    You can find the samples from the below link
    http://scn.sap.com/community/restful-sdk/content#filterID=contentstatus%5Bpublished%5D~objecttype~objecttype%5Bdocument%5D
    You would need to refer to the community below in case you have concerns about Rest SDKs.
    http://scn.sap.com/community/restful-sdk
    Thanks,
    Prithvi

  • Use vCloud SDK for Java to integrate with vCD 5.6

    Hello Folks,
             Newbie here.
             I have a situation where a home grown app, that uses vCloud SDK for Java to invoke a vCloud Director 5.1 installation. We use this for powering on/ off a few VMs.
             Our installation is being upgraded from vCloud Director 5.1 to 5.6.
             My question is, are we expected to upgrade/ carry out any code changes to our current implementation to integrate with the newer runtime version (5.6)?
             Many thanks in advance.
    Regards
    Mohan

    Somewhat going from memory here.
    As long as the REST API Versions URL states that it is compatible with 5.1, then you should be fine to make the calls as v5.1.
    Here is the section of the documentation for that:
    Using the vCloud API with vCloud Director
    The I think the SDKs are just wrappers in a manner of speaking.  They all eventually translate code (java/python/etc) into a REST API system that is sent into vCloud Director via the API.  For the most part, I think it'll work.
    That's not talking about "support", just that it should work with some exceptions.  I don't know if there is an official stance on cross compatibility like this.

  • Report Repointing using RESTful Web Services

    With respect to this link: Changing Dataproviders for a Webi Report using RESTful Web Services
    Cosider the following scenario:
    You have an automation code using which, you accepts 20 report id and their respective Current universe id and New universe id.
    If suppose, you have user input prompts in 10 reports and you don't know those 10 reports, how will you provide values to those prompts at a single execution of the code?
    OR
    Is there any function using which you can provide associated random value to those prompts?

    Hi Raghunath,
    Looking at your macro, most of the functionality would be available with REST SDK. With BI 4.x REST is now only SDK which provides APIs to work with webi report. With .NET or Java SDK we could not eeven schedule a webi doc with prompts.
    With BI 4.1 REST APIs include.
    refresh report, schedule report, save report, export which is done by your macro.
    For detailed tasks, such as saving and modifying the report for specific users and send to schedule, you would need to play around with REST Urls to understand the workflow.
    For starters take a look at the devleopers guide for REST here:
    http://help.sap.com/businessobject/product_guides/sbo41/en/sbo41_webi_restful_ws_en.pdf
    Here is the doc which compares the availability of SDK APIs with different BI versions.
    http://scn.sap.com/docs/DOC-53285
    For any Enterprise level tasks, you could always use .NET or Java enterprise SDk and comibe it with your REST app.
    - Bhushan
    Senior Engineer
    SAP Active Global Support
    Follow us on Twitter
    Got Enhancement ideas? Try the SAP Idea Place

  • How to convert html to pdf using acrobat sdk 8.0?

    hi
    I am a beginner of acrobat sdk .
    I want to know How to use acrobat sdk 8.0 to convert html to pdf?
    herere some questions :
    1:How to support navigation inside PDF file that generated using acrobat sdk 8.0? For example: theres catalog in the top of HTML file, customer hopes can navigate inside the PDF file just like navigating inside the HTML file.
    2:How to support operating some controls in the PDF file that generated using acrobat sdk 8.0? For example: therere some drop down list and text box in HTML file, customer hopes can input text in the text box, click the drop down list to see available options in it just like in HTML file.
    Thanks in advance for any help and suggestion.

    Hello,
    I want a system to re-brand my 37 pages PDF for affiliates.
    I want a php dynamic link in the PDF online in order to personalize automatically the PDF for each affiliate. I need to change 2 links each time. The affiliate ID and the Paypal email (payment button) in page 36.
    Can you help?
    Please let me know
    Thank you
    Alex
    PS My system is online and i can give you the url if it helps.

  • Concurrent report export using enterprise SDK question

    Hello,<br>
    Our company uses Enterprise SDK to export report to PDF. We test our software using CR Server 2008 trial version. I am looking for advices for following questions:<br>
    1. As out testing server is trial version at the moment, it does not complain or generate any warning messages on numbers of concurrent users (we can only view current sessions and licenses from CMC). Could someone please let me know what will happen when full version CR server detects that max limit concurrent users access has reached? Will the server notify SDK, and SDK will generate exception; or the request will be queued until any other concurrent user end his session. <br>
    2. We implement an EJB to invoke SDK process. While EJB itself is thread safe, I am not quite sure if enterprise SDK is thread safe too. My assumption is that one SDK will be instantiated per JVM (like JRC?). It will issue a new thread to each report request (from EJB). Please correct me if I am completely wrong. <br>
    3. This is about licensing. Our scenario is there will be multiple (and concurrent) end users use our J2EE system, and may request report from CR server. Our J2EE system, however, will use one user account to login to CR server through enterprise SDK. In the other word, CR server will treat our J2EE system as one user (even if there are multiple or concurrent request). My question is that does it violate legal agreement with Business Object if I configure the user account our J2EE system uses as Named user?! If it is, we will get concurrent user licenses instead. Please advice. Thank you =)<br>
    Kind Regards,<br>
    mlie

    Hello Adam, <br>
    Thanks for your reply. It is very helpful. <br>
    As for point 1, what exact SDKException will SDK throw (e.g. SDKException.Unexpected)?<br>
    In point 2, "There have been issues reported previously that only occur when using EJB's.". Is it possible to let me know what kind of issues they are? <br>
    In point 3, as CMS supports Window AD authentication, and our system uses same mechanism to perform authentication, I guess the best strategy is to implement single sign on? Please advice. Thank you <br>
    Regards,<br>
    mlie

  • Creating a sample report using JAVA SDK

    Hi,
    I am trying to create a sample report using JAVA SDK.
    I slelect 4 "free cells" and pass 4 different strings to it.
    I even slelect the font colour and size. When i run the class and try to view the report in Infoview, I only seeblank blocks without any data. Now if I edit the report from infoview, and save the changes, I am able to see the data.
    My issue is, Why am I not able to see the data when I run the java code.
    Please find teh code below.
    package com;
    import java.awt.Color;
    import java.io.FileOutputStream;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    import com.businessobjects.rebean.wi.BinaryView;
    import com.businessobjects.rebean.wi.DataProvider;
    import com.businessobjects.rebean.wi.DataProviders;
    import com.businessobjects.rebean.wi.DataSource;
    import com.businessobjects.rebean.wi.DataSourceObject;
    import com.businessobjects.rebean.wi.DocumentInstance;
    import com.businessobjects.rebean.wi.DocumentLocaleType;
    import com.businessobjects.rebean.wi.FontImpl;
    import com.businessobjects.rebean.wi.FreeCell;
    import com.businessobjects.rebean.wi.HTMLView;
    import com.businessobjects.rebean.wi.OutputFormatType;
    import com.businessobjects.rebean.wi.PageHeaderFooter;
    import com.businessobjects.rebean.wi.Query;
    import com.businessobjects.rebean.wi.Recordset;
    import com.businessobjects.rebean.wi.Report;
    import com.businessobjects.rebean.wi.ReportBody;
    import com.businessobjects.rebean.wi.ReportCell;
    import com.businessobjects.rebean.wi.ReportContainer;
    import com.businessobjects.rebean.wi.ReportElement;
    import com.businessobjects.rebean.wi.ReportEngine;
    import com.crystaldecisions.sdk.framework.CrystalEnterprise;
    import com.crystaldecisions.sdk.framework.IEnterpriseSession;
    import com.crystaldecisions.sdk.framework.ISessionMgr;
    import com.crystaldecisions.sdk.occa.infostore.IInfoObject;
    import com.crystaldecisions.sdk.occa.infostore.IInfoObjects;
    import com.crystaldecisions.sdk.occa.infostore.IInfoStore;
    import com.crystaldecisions.sdk.plugin.CeKind;
    public class Aug7th {
          * @param args
         public static void main(String[] args) {
              // TODO Auto-generated method stub
              String CMS = "pundl8136:6400";
              String userID = "srivas";
              String password = "morcom123";
              String auth = "secEnterprise";
              List<String> entire =new ArrayList<String>();
              List<String> country =new ArrayList<String>();
              List<String> resort =new ArrayList<String>();
              IEnterpriseSession enterpriseSession;
              try
                   ISessionMgr mySessionMgr = CrystalEnterprise.getSessionMgr();
                   enterpriseSession = mySessionMgr.logon(userID, password, CMS,auth);
                   if (enterpriseSession != null)
                   {//Create and store useful objects for the session.
                        IInfoStore iStore = (IInfoStore)enterpriseSession.getService("InfoStore");
                        ReportEngine reportEngine = (ReportEngine)enterpriseSession.getService("WebiReportEngine");
                        IInfoObject infoView = null;
                        String str = "SELECT SI_ID, SI_NAME, SI_PARENTID FROM CI_INFOOBJECTS WHERE (SI_KIND = '"+CeKind.WEBI+"' OR SI_KIND='FullClient') " +
                        "AND SI_INSTANCE = 'false' AND SI_NAME='Structure Test_001_Java' ORDER BY SI_NAME ASC ";
                        //String str = "SELECT SI_ID, SI_NAME, SI_PARENTID FROM CI_INFOOBJECTS ORDER BY SI_NAME ASC ";
                        IInfoObjects objInfoObjectsWIDs = (IInfoObjects) iStore.query(str);
                        System.out.println(objInfoObjectsWIDs.size());
                        IInfoObject objInfoObjectWID = (IInfoObject) objInfoObjectsWIDs.get(0);
                        DocumentInstance doc = reportEngine.openDocument(objInfoObjectWID.getID());
                        DataProviders dps = doc.getDataProviders();
    //                     Retrieve the 1st data provider
                        DataProvider dp = dps.getItem(0);
    //                     Retrieve the universe objects
                        DataSource ds = dp.getDataSource ();
                        Query q = dp.getQuery();
                        Recordset rs = dp.getResult(0);
    //                     0: assume query has one flow
                        rs.first();
    //                     Print the column types. They can be Integer, String,
    //                     or Date.
                        for (int i = 0; i < rs.getColumnCount(); i++) {
                        Class c = rs.getColumnType(i);
                        StringBuffer sbt = new StringBuffer();
                        if ( c.equals(Integer.class) )
                        sbt.append("Integer");
                        if ( c.equals(String.class) )
                        sbt.append("String");
                        if ( c.equals(Date.class) )
                        sbt.append("Date");
                        sbt.append(";");
                        System.out.println(sbt.toString());
                        System.out.println(rs.getColumnCount());
                        while (!rs.isLast()) {
    //                          column names
                             StringBuffer sbn = new StringBuffer();
                             StringBuffer sbd = new StringBuffer();
                             for (int j = 0; j < rs.getColumnCount(); j++) {
                             sbn.append( rs.getColumnName(j).toString() );
                             sbn.append(";");
                             System.out.println("sbn "+sbn.toString());
    //                          data
                             for (int k= 0; k< rs.getColumnCount(); k++) {
                             sbd.append( rs.getCellObject(k).toString() );
                             sbd.append(";");
                             entire.add(rs.getCellObject(k).toString());
                             System.out.println("sbd "+sbd.toString());
                             rs.next();
                        System.out.println(entire.size());
                        for(int i=0;i<entire.size();i++){
                             country.add(entire.get(i));
                             i++;
                             System.out.println("entireList "+entire.get(i));
                             resort.add(entire.get(i));
                        DataSourceObject city = ds.getClasses().getChildByName("Country");
                        DataSourceObject resorts = ds.getClasses().getChildAt(1);
                        dp.runQuery();
                        ReportContainer report = doc.createReport("Resort");
                        PageHeaderFooter header = report.getPageHeader();
                        FreeCell headerCell = header.createFreeCell("Resort Report");
                        PageHeaderFooter footer = report.getPageFooter();
                        FreeCell footerCell = footer.createFreeCell("Report Ends");
                        ReportBody body =  report.createReportBody();
                        for(int k=0;k<resort.size();k++){
                        FreeCell res=body.createFreeCell(resort.get(k));
                        res.getAttachTo();
                        res.setHeight(15d);
                        res.setWidth(30d);
                        Color c = new Color(255,255,255);
                        Color c1 = new Color(255,0,0);
                        FontImpl fnt = (FontImpl)res.getFont();
                        fnt.getDecoration().setTextColor(c1);
                        res.setFont(fnt);
                        //res.deleteAttachment();
                        //res.setAttachTo(body,VAnchorType.BOTTOM,HAnchorType.NONE);
                        doc.applyFormat();
                        doc.refresh();
                        final String l_docToken = doc.getStorageToken();
                        final DocumentInstance l_docToSave = reportEngine.getDocumentFromStorageToken(l_docToken);
                        doc.saveAs("mor31",835,null,null);
                        doc.closeDocument();
                        str = "SELECT SI_ID, SI_NAME, SI_PARENTID FROM CI_INFOOBJECTS WHERE (SI_KIND = '"+CeKind.WEBI+"' OR SI_KIND='FullClient') " +
                        "AND SI_INSTANCE = 'false' AND SI_NAME='mor31' ORDER BY SI_NAME ASC ";
                        //String str = "SELECT SI_ID, SI_NAME, SI_PARENTID FROM CI_INFOOBJECTS ORDER BY SI_NAME ASC ";
                        objInfoObjectsWIDs = (IInfoObjects) iStore.query(str);
                        System.out.println(objInfoObjectsWIDs.size());
                        objInfoObjectWID = (IInfoObject) objInfoObjectsWIDs.get(0);
                        DocumentInstance doc1 = reportEngine.openDocument(objInfoObjectWID.getID());
                        String token = doc1.getStorageToken();
                        DocumentInstance doc2 = reportEngine.getDocumentFromStorageToken(token);
                        doc2.saveAs("123123", 835, null, null);
                   //     doc.refresh();
                        //doc.save();
                   enterpriseSession.logoff();
              catch(Exception e)
                   e.printStackTrace();

    duplicate post:
    Sample report using JAVA SDK

  • How do you remove the filename/path using the SDK

    I have a program that uses the Adobe Acrobat SDK . It creates aPDF file from a HTML file that gets created after the program cruches some data. It can create the PDF file fine but how do I get it to do it with out the file name and path in the lower left corner. We insert the created PDF file into another document and do not want to show the data on these created pages.
    Have searched through this site and can not see it mentioned.   HELP !!!

    I am not the programmer, he is out of the office today.
    What I see happen is that our program is used to create a database of the content of a multipage PDF file (an old doucment that has been scanned and OCR'd), the program then outputs the data as a HTML file (not the Adobe SDK).
    This HTML file is then converetd into a PDF file and attached to certain subsets of the original PDF file, its does a whole bunch of splitting and recombining of the document into the sections we need. It does this fine, no problems at all. All of this is done using our program and the Adobe SDK.
    The issue is that the PDF file (generally just one page) that gets created from the HTML file includes file name and file path at the lower left corner of the page. We are looking for the commands within the SDK that can turn the feature/function that creates this text on/off.
    As the Adobe Acrobat on this machine is used for many different jobs, some that require this text to be shown on other documents that are created (by using Acrobat itself and not the SDK) we really don't want to have to open Acrobat itself everytime we want to run this process.
    The SDK seems to have commands for pratically everything else, we were hoping it also has the commands within it that we can then program to not create this one area of text when converting the HTMl to PDF file from within our program..
    I hope that comes across OK
    PS
    I just ran a test creating a PDF file froma  webpage, and I can see the field Place Headers and Footers on a new page. I have tried creating the page with and without the Headers and Footers, that works fine. But can this be done just by using the SDK and if so where is that command located.
    Message was edited by: MichaelEastick

  • How to get permission of a sharepoint list for a user using REST api

    Hi there,
    I have a requirement where i need to check the access permission of a user against a List or Library only using REST api from my remote salesforce app. [I already have access token and I am able to view list, add item etc..]
    Say for example, I have to send the list name and user name, and get the result as Read, Write, Contribute(Manage), None. I need to display what permission does that user have for that List.
    How do I achieve this. Please help me.
    Thanks in advance.

    Hi,
    For High and low bits, we can create a new SP.BasePermissions object to use like below:
    function success(data){
    var permissions = new SP.BasePermissions();
    permissions.set(SP.PermissionKind.manageLists);
    var hasPermission = permissions.hasPermissions(data.d.EffectiveBasePermissions.High, data.d.EffectiveBasePermissions.Low);
    Here is a detailed article for your reference:
    http://www.lifeonplanetgroove.com/checking-user-permissions-from-the-sharepoint-2013-rest-api/
    Thanks
    Best Regards
    Jerry Guo
    TechNet Community Support

  • Is there a way to use REST service to query data from a forms collection?

    I want to query and retrieve data from a SharePoint forms collection. I have a forms library that has multiple documents all being created using the same template.
    I need to query and retrieve data from it using oData/ReST API.
    I could see the /_vti_bin/listdata.svc and it seems I cannot get the forms data using this.
    What will be the best approach?
    Does that helps?
    If you found this post helpful, please “Vote as Helpful”. If it answered your question, please “Mark as Answer”.
    Thanks,
    Kangkan Goswami |Technical Architect| Blog: http://www.geekays.net/
    http://in.linkedin.com/in/kangkan

    Hi,
    Rest service is not available to retrieve the data in forms.
    For this issue, the common workaround I know is to first populate the form fields as columns in form library, then retrieve the columns value instead. You can also use rest service in this way.
    If it is not convenience this way, please provide more information about the scenario to get the data.
    Thanks,
    Qiao Wei
    TechNet Community Support

  • Document Set Creation in document library using REST API in Sharepoint 2013

    Hi,
    I want to create the document set using REST API call. Currently i am able to create the folder and able to upload the files using REST API's in the document library. Is there any way we can pass the contentype name or Id and create the document set using
    REST API call. We need to create the document set along with metadata and upload the files inside the document set.
    I need to create the document set along with meta data column values using REST API. Please let me know how we can achieve this through REST API.
    Thank you,
    Mylsamy

    Hi,
    According to your post, my understanding is that you wanted to create document set along with managed metadata fields.
    The REST API does not currently support working with Managed Metadata or Taxonomy fields.
    As a workaround, we can use the JavaScript Client Object Model.
    Create document set using JavaScript Client Object Model.
    http://blogs.msdn.com/b/mittals/archive/2013/04/03/how-to-create-a-document-set-in-sharepoint-2013-using-javascript-client-side-object-model-jsom.aspx
    http://social.technet.microsoft.com/Forums/sharepoint/en-US/aacd96dc-0fb2-4f0d-ab4c-f94ce819e3ed/create-document-sets-with-javascript-com-sharepoint-2010
    Set managed metadata field with JavaScript Client Object Model.
    http://sharepoint.stackexchange.com/questions/95933/add-list-item-with-managed-metadata-field-through-jsom
    http://sharepointfieldnotes.blogspot.com/2013/06/sharepoint-2013-code-tips-setting.html
    Thanks,
    Jason
    Forum Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Jason Guo
    TechNet Community Support

  • How to get the list of parameter and set them using RESTFul WS for a Crystal Report

    Hi All,
    I am able to schedule a Crystal report using following POST Restful call - http://localhost:6405/biprws/infostore/4738/scheduleForms/now and with a request xml body. But report is failing because I am not passing the parameter.
    But I need pass parameters/prompts to the Crystal report to execute successfully.
    What is the request XML to pass the parameter  for the report?
    I was able to do this for WEBI reports but I am not able to find any way to do this for Crystal reports?
    Any help on this matter is really appreciated.

    Hi Venki
    Please have a look at:
    How to pass parameters and generate the report using RESTful API in VB.net
    This is also described in the Developer Help files:
    http://help.sap.com/businessobject/product_guides/sbo41/en/sbo41_webi_restful_ws_en.pdf
    - Ludek
    Senior Support Engineer AGS Product Support, Global Support Center Canada
    Follow us on Twitter

  • Having trouble with creation of a cloud service with multiple virtual machines using java sdk.

    I am creating a cloud service on azure with 2 virtual machines using java sdk API. Service created successfully.
    My input endpoint details are as follows.
    INPUT ENDPOINTS
    Head : 191.238.144.47:2400
    Head : 191.238.144.47:22
    Node0 : 191.238.144.47:43211
    For Head instance port 2400 is for HTTPS and port 22 is for SSH and for Node0 instance port 43211 is for SSH.
    But I am having problem with doing a ssh on Head instance. Sometimes it works sometimes doesn't. Same problem with HTTPS also.
    I have some application running over there but when i try to access it thru browser sometimes it works but most of the time doesn't. When I restart the instances from azure portal, its works after
    that(not always but most of the time). 
    Now I am confused what is going on there. I am creating cloud service and virtual machines using java sdk and setting input endpoints also. After creation of all instances i restart every instance programmatically .
    I am not sure whether restart is required or not. It must be something to do with input endpoints only but not able to get the right thing i guess. When i do the same thing thru azure portal(creation of cloud service with virtual machines and setting up input
    end points) everything works fine but not achieving the result when implementing it by java sdk API. Please help me.

    HI Nithin,
    Thanks for your reply. I am setting the endpoints after creating my instances using update call. Here's the code snippet.
    AzureService aServ = new AzureService(session);
     if(aServ.checkNameAvailability(clusterName)) {
               aServ.createHostedService(clusterName, "dbX cluster");         
             // Creating head instance
             aServ.createHead(clusterName, imgName, headType, userName, pswd);  
            // Setting end points for head node
             String name = "ssh";
             int port = 22;
             aServ.updateVMInputEndpoint(clusterName, "Head", name, port);
             // Restarting head instance
             aServ.restartVM(clusterName, "Head");
           String roleName = "Node";
           String tmpRoleName = "";
           for(int i=0; i<noi; i++) {
                      port = 43210+(i+1);
                      tmpRoleName = roleName + i;
                   // Creating node instance
                    aServ.createVM(clusterName, tmpRoleName, imgName, nodeType, userName, pswd);
                  // Setting end points for node instance
                   aServ.updateVMInputEndpoint(clusterName, tmpRoleName, name, port);
                  // Restarting node instance
                 aServ.restartVM(clusterName, tmpRoleName);
          // Method to update the input endpoint details 
          public void updateVMInputEndpoint(String clusterName, String vmName, String name, int port)
            throws Exception {
                    VirtualMachineGetResponse resp = computeManagementClient.getVirtualMachinesOperations().
                                                            get(clusterName, clusterName, vmName);
                    VirtualMachineUpdateParameters updateParameters = new VirtualMachineUpdateParameters();
                    //get the configuration list
                    ArrayList<ConfigurationSet> configlist = resp.getConfigurationSets();
                    //get inputendpoint list and update it
                    ArrayList<InputEndpoint> endpointlist = configlist.get(0).getInputEndpoints();
                    InputEndpoint inputEndpoint = new InputEndpoint();
                    inputEndpoint.setEnableDirectServerReturn(false);
                    inputEndpoint.setPort(port);
                    inputEndpoint.setLocalPort(port);
                    inputEndpoint.setName(name);
                    inputEndpoint.setProtocol(InputEndpointTransportProtocol.TCP);
                    endpointlist.add(inputEndpoint);
                    // Open port for https on head node
                    if(vmName.equals("Head")) {
                            inputEndpoint = new InputEndpoint();
                            inputEndpoint.setEnableDirectServerReturn(false);
                            inputEndpoint.setPort(2400);
                            inputEndpoint.setLocalPort(2400);
                            inputEndpoint.setName("https");
                            inputEndpoint.setProtocol(InputEndpointTransportProtocol.TCP);
                            endpointlist.add(inputEndpoint);
                    updateParameters.setConfigurationSets(configlist);
                    //required for update
                    OSVirtualHardDisk osVirtualHardDisk = resp.getOSVirtualHardDisk();
                    updateParameters.setOSVirtualHardDisk(osVirtualHardDisk);
                    updateParameters.setRoleName(resp.getRoleName());
                    OperationResponse updtResp = computeManagementClient.getVirtualMachinesOperations().update(clusterName, clusterName, resp.getRoleName(), updateParameters);
    And every time i am creating a new cloud service along with head and node instances. Region is "South Central US".
    I am setting ProvisionGuestAgent field to true at instance creation time. Thank you.

  • Best practice for development using REST API - OData

    Hi All, I am new to REST. I am a developer who works mostly in server-side code using Visual Studio. Now that Microsoft is advocating to write code using REST API instead of server-side code or client side object model, I am trying to use REST API.
    I googled and most of the example shows to write a code and put it on Content Editor/Script Editor. How to organize code and deploy to the staging/production in this scenario? Is there any Best Practice or example around this?
    Regards,
    Khushi

    If you are writing code in aspx or cs it does not mean that you need to deploy it in the SharePoint server, it could be any other application running from your remote server. What I mean it you can use C# & Rest API to connect to SharePoint server.
    REST API in SharePoint 2013 provides the developers with a simple standardized method of retrieving information from SharePoint and it can be used from any technology that is capable of sending standard HTTP requests.
    Refer to the following blog that provide your more details about comparison of the major features of these programming choices/
    http://msdn.microsoft.com/en-us/library/jj164060.aspx#RESTODataA
    http://dlr2008.wordpress.com/2013/10/31/sharepoint-2013-rest-api-the-c-connection-part-1-using-system-net-http-httpclient/
    Hope this helps
    --Cheers

Maybe you are looking for

  • Battery Life on brand new macbook pro 15 inch i5 only lasting 3 hours

    The battery on my macbook pro is only lasting 3 hours with light use...If i'm watching a video or on a game it lasts maybe an hour or 2. I charged it fully when I first got it out of the box 2 days ago. I have tried calibrating it which worked a litt

  • Error while deploying the BMP Bean

    Hi Here Iam trying to deploy the Account(BMP)Bean in to WebAS and the following error is getting while deplying. Jun 28, 2005 6:18:42 PM /userOut/deploy (com.sap.ide.eclipse.sdm.threading.DeployThreadManager) [Thread[Deploy Thread,5,main]] INFO: [027

  • Saving a PDF document from a website

    When a bank has a document for you on its website, when you click the link a PDF document appears on the screen.  There isn't a menubar on the document, however when you hover the mouse cursor over the document, this toolbar appears It's obviously su

  • POP UP Window on screen - How

    How to invoke a Pop up window on screens.

  • Nested Dashboard Pages in OBIEE 11.1.1.6

    Hi, I am working on OBIEE 11.1.1.6. We are having a requirement to have nested pages in OBIEE Dashboard. Example: In Dashboard A, i have two pages Page A and Page B. Again under Page A, i should have Page A1, page A2, Page A3. Similarly for Page B I