Schedule the Publishing date of a file in Document Library using CSOM

I am having a hard time to schedule the publishing date of a document uploaded to a sharepoint document library. Basicaly, what I want is to upload a file to a document library and to schedule it´s publishing for a future date, using CSOM. Then someone should
approve this (file content and scheduled date and time for publishing).
I am able to upload the document to the document library and to start the approval workflow automatically (when the document is uploaded), but I don´t know how to set the publishing date using client side object model.
Apparently all I need to do is to set up the properties ScheduledItem.StartDate and ScheduledItem.EndDate, but I just can´t manage to do it. Any help will be very much appreciated.

I am having a hard time to schedule the publishing date of a document uploaded to a sharepoint document library. Basicaly, what I want is to upload a file to a document library and to schedule it´s publishing for a future date, using CSOM. Then someone should
approve this (file content and scheduled date and time for publishing).
Scheduling is enable and the coluns StartDate and EndDate are already added to the document library. I am able to upload the document to the document library and to start the approval workflow automatically (when the document is uploaded), but I don´t know
how to set the publishing date using client side object model.
Apparently all I need to do is to set up the properties ScheduledItem.StartDate and ScheduledItem.EndDate, but I just can´t manage to do it. Any help will be very much appreciated.

Similar Messages

  • How to update managed metadata column for all file in document library using powershell

    Hi,
    How to update managed metadata column for all file in document library using powershell?
    Any help on it.
    Thanks & REgards
    Poomani Sankaran

    Hi TanPart,
    I have changed the code which you have give in order to get the files from SharePoint 2010 Foundation  Document Library.But i am getting below error in powershell.
    Property 'ListItemCollectionPosition' cannot be found on this object; make sure it exists and is settable.
    Could you tell me which is the issues in it?
    See the code below.
    $web = Get-SPWeb http://ntmoss2010:9090/Site
    $list = $web.Lists["DocLib"]
    $query = New-Object Microsoft.SharePoint.SPQuery
    $query.ViewAttributes = "Scope='Recursive'";
    $query.RowLimit = 2000
    $caml = '<Where><Contains><FieldRef Name="Title" /><Value Type="Text">Process Documents/Delivery</Value></Contains></Where>' +
            '<OrderBy Override="TRUE"><FieldRef Name="ID"/></OrderBy>'
    $query.Query = $caml
    do
        $listItems = $list.GetItems($query)
        $spQuery.ListItemCollectionPosition = $listItems.ListItemCollectionPosition
        foreach($item in $listItems)
            #Cast to SPListItem to avoid ambiguous overload error
            $spItem = [Microsoft.SharePoint.SPListItem]$item;
            Write-Host $spItem.Title       
    while ($spQuery.ListItemCollectionPosition -ne $null)
    Thanks & Regards
    Poomani Sankaran

  • Unable to add aspx file to document library using REST and JSOM in SharePoint Hosted App

    Hi,
    I am unable to add an aspx file to document library.  I was actually trying to create a WIKI page and upload to Pages library but that wasn't working so I tried simple document library.  It keeps failing with Access Denied error.  I have checked
    the blocked types and aspx is not included.  I can upload it directly from the browser so that shouldn't be the case.  I have read that it can be achieved with CSOM but I need this to work with a SharePoint Hosted App.  Here is my JSOM:
    factory = new SP.ProxyWebRequestExecutorFactory(appweburl);
        context.set_webRequestExecutorFactory(factory);
        appContextSite = new SP.AppContextSite(context, hostweburl);
        oWeb = appContextSite.get_web();
        oList = oWeb.get_lists().getByTitle('Documents');
        fileCreateInfo = new SP.FileCreationInformation();
        fileCreateInfo.set_url("mywiki.aspx");
        fileCreateInfo.set_content(new SP.Base64EncodedByteArray());
        fileContent = "<%@ Page Inherits=\"Microsoft.SharePoint.Publishing.TemplateRedirectionPage,Microsoft.SharePoint.Publishing,Version=15.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c\" %> <%@ Reference VirtualPath=\"~TemplatePageUrl\"
    %> <%@ Reference VirtualPath=\"~masterurl/custom.master\" %>";
        for (var i = 0; i < fileContent.length; i++) {
            fileCreateInfo.get_content().append(fileContent.charCodeAt(i));
        newFile = oList.get_rootFolder().get_files().add(fileCreateInfo);
        context.load(newFile);
        context.executeQueryAsync(function () {
            alert('yo');
        }, function (sender, args) {
            alert(args.get_message() + '\n' + args.get_stackTrace());
    If I change the file extension to "txt", it works.  Same with REST implementation, it works with "txt" but fails with "aspx".  Maybe what I am trying to do will not work using JSOM or REST.  Any suggestions?  Your
    help is always appreciated.
    Regards,
    kashif

    Your code works fine in both my on-premises and SharePoint Online. I have given the app full control, so I suspect this is a permissions issue. I would check your permissions on your appmanifest. Must be something to do with publishing permissions. Try
    giving full control and work the permissions down.
    Blog | SharePoint Field Notes Dev Tools |
    SPFastDeploy | SPRemoteAPIExplorer

  • Download older version of a file from SharePoint Document Library using CSOM and 404 error

    Hi,
    I am trying to download previous versions including Major and Minor versions of documents from SharePoint Online using CSOM. I get 404 error when I try to download the file. I found several posts on various discussion forums where people are getting same
    error but none of those have any solution/answer. Below is one of the threads and sample code I have tried that results in 404 error. If I use the link in browser directly, I am able to download the file. Also I am able to download the current version of file
    using CSOM without any problem, it is only the older versions that give me 404 in CSOM.
    http://qandasys.info/how-to-download-the-historical-file-version-content-using-csom/
    public int GetStreamFromFile(string docid, string lib, string fileurl, ClientContext clientContext, int iuserid, string Version, bool isCurrrent)
    if(!isCurrent)
    List LibraryName = clientContext.Web.Lists.GetByTitle(lib);
    clientContext.Load(LibraryName);
    clientContext.ExecuteQuery();
    CamlQuery camlQuery = new CamlQuery();
    camlQuery.ViewXml = "" + fileurl +
    Microsoft.SharePoint.Client.ListItemCollection collListItem = LibraryName.GetItems(camlQuery);
    clientContext.Load(collListItem, items => items.Include(item => item.Id, item => item["FileLeafRef"], item => item["LinkFilename"],
    item => item["FileRef"], item => item["File_x0020_Size"], item => item["DocIcon"], item => item.File.Versions));
    //clientContext.Load(collListItem);
    clientContext.ExecuteQuery();
    foreach (Microsoft.SharePoint.Client.ListItem oListItem in collListItem)
    //string fileurl1 = (string)oListItem["FileRef"];
    //string filename = (string)oListItem["LinkFilename"];
    foreach (FileVersion version in oListItem.File.Versions)
    if (Version == version.VersionLabel)
    //Added excutequery to get object one more time as per blog
    //http://social.technet.microsoft.com/Forums/de-DE/sharepointdevelopmentprevious/thread/88a05256-8694-4e40-863d-6c77512e079b
    clientContext.ExecuteQuery();
    FileInformation fileInformation = ClientOM.File.OpenBinaryDirect(clientContext,version.Url);
    bytesarr = ReadFully(fileInformation.Stream);
    Darwaish

    Hi,
    According to your description,
    I know you want to get older version of a file from SharePoint Document Library using Client Object Model.
    The following code snippet for your reference:
    public void GetVersions()
    ClientContext clientContext = new ClientContext(“http://SPSite”);
    Web site = clientContext.Web;
    clientContext.Load(site);
    clientContext.ExecuteQuery();
    File file = site.GetFileByServerRelativeUrl(“/Shared Documents/mydocument.doc”);
    clientContext.Load(file);
    clientContext.ExecuteQuery();
    ListItem currentItem = file.ListItemAllFields;
    clientContext.Load(currentItem);
    clientContext.ExecuteQuery();
    FileVersionCollection versions = file.Versions;
    clientContext.Load(versions);
    clientContext.ExecuteQuery();
    if (versions != null)
    foreach(FileVersion _version in versions)
    Console.WriteLine(“Version : {0}”,_version.VersionLabel);
    More information:
    http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.client.file.versions.aspx
    Best Regards,
    Dennis Guo

  • Allowing only pdf files in document library using Javascript

    HI,
    I have a document library in sharepoint 2013, where i want only pdf files to get uploaded in it. I have created event receiver for the same and it is working fine. but i want to restrict the files using javascript on
    the page itself, since, In event receiver, after the file is getting uploaded, it is checking and throwing error. So, is there any way to check for the file type before uploading the file and show error message if wrong file is uploaded?
    Harikrishna Baskaran

    Bind event to the upload button and add jquery to validate the file extension. Refer to the following posts for more information
    http://stackoverflow.com/questions/13124950/change-onclick-event-input-type-button-in-ie-8-9-ff-with-jquery-won%C2%B4t-wo
    http://stackoverflow.com/questions/4234589/validation-of-file-extension-before-uploading-file
    --Cheers

  • Create excel file in document library from the data in datatable

    Hi ,
    I want to generate files dynamically and have then saved to my documetn library instead of  some location on the  harddisk.
    I want to generate and excel file  which will read data from the sharepoint list.
    Form that data excel will be genereated in the code ,and i want the generated excel directly available in the  document library.
    I could use open xml of excel itneroperablity for the excel file generation.
    How can i do that.

    Hi,
    According to your description, you might want to gather data from a SharePoint list as an excel file and upload it to a Document Library.
    As you said, you can generate an Excel file using the Open XML SDK, I will provide some information about how to get data from SharePoint list and how to upload files
    to a Document Library.
    About the retrieving data from a SharePoint list, we can use SharePoint Object Model:
    SharePoint Object Model -
    SPListItem class
    http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.splistitem.aspx 
    Add, Update and Delete List Items Programmatically in SharePoint
    http://www.mindfiresolutions.com/Add-Update-and-Delete-List-Items-Programmatically-in-Sharepoint-372.php 
    About
    How to: Upload a File to a SharePoint Site from a Local Folder:
    https://msdn.microsoft.com/en-us/library/office/ms454491(v=office.14).aspx
    Thanks
    Patrick Liang
    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]
    Patrick Liang
    TechNet Community Support

  • Check the modification date of a file and compare it to the current date

    Hey everyone,
    I'm writing a script that compares the modification date of a file to the current date, and performs actions based on whether the file was modified 7 days ago or not. I haven't been able to figure out exactly how to do this.
    I haven't been able to find much in the way of this online, and I am not that familiar with manipulating dates and whatnot. I was able to get a bit of it, posted below:
    currentDate=`date +%b-%d`
    fileDate=`ls -l ~/.backup.txt | awk '{ print $6, $7 }'`
    echo "$fileDate"
    echo "$currentDate"
    if [ "$fileDate" <= "$currentDate" ]; then
    echo "old enough to run script"
    else
    echo "not old enough yet"
    fi
    Of course, this doesn't work. Any help would be much appreciated. This is for Leopard.
    TIA,
    Andrew

    find ~/.backup.txt -mtime +7 -exec yourscript {} ;
    You may need to play with the +7 value to get the exact number of days old the file needs to be.
    The find command will accept a directory (actually it is frequently used with directories) and will find all files in that directory and any subdirectories below that match the find selection critiera.
    So you could do something like
    find ~ -mtime +7 | xargs yourscript
    or
    find ~ -mtime +7 -name "*.txt" | xargs yourscript
    and if your script does not accept multiple filenames on the command line, you can use
    find ~ -mtime +7 | xargs -n 1 yourscript
    and if your file names have spaces in them, you can use
    find ~ -mtime +7 -print0 | xargs -0 -n 1 yourscript

  • How to download the script data into pdf file

    how to download the script data into pdf file
    i have one option to download the script data to pdf file --->rstxpdft4 program.
    i have one doubt how to use this proogram.or any function module to download the script data to pdf file.
    Thanks and regards,
    Sri.

    Hi      Sri Sai,
    I know one method to convert the sapscript to pdf file :
    first generate a Spool Request for the required Sapscript
    then goto transaction SP01 and copy the generated Spool Request number
    now execute the SAP report RSTXPDFT4
    here enter the copied Spool request number and the target directory into the parameters
    execute the report
    required pdf file will be generated into the target directory
    i hope it will help you out
    Please refer this simple program:
    http://www.sapdevelopment.co.uk/reporting/rep_spooltopdf.htm
    Reward points if found helpful....
    Cheers,
    Eshwar.

  • To get the table data into a file in pl/sql developer

    Hi
    i have table with 90k rows, i want to get the table data into a file like excel....
    i executed the select statement it shows only 5k rows because of buffer problem.
    can u please help me any alternative way to get the table data into a file.
    using cursors like that

    Really? excel for 90K rows :)
    face/desk/floor/"Hi and sorry neighbours below, it's me again"
    Err, I see you point, thanks Dang, I completely missed the 90k recs part, I must be getting old or modern ;)
    @Ramanjaneyulu,
    can u please help me any alternative way to get the table data into a file.You can always dump a query to a file, check these:
    http://tkyte.blogspot.com/2009/10/httpasktomoraclecomtkyteflat.html
    How to create Excel file (scroll down when necessary)
    http://forums.oracle.com/forums/search.jspa?threadID=&q=export+to+excel&objID=f137&dateRange=all&userID=&numResults=15&rankBy=10001
    Depending on your database version ( the result of: select * from v$version; ) you might have some other options.

  • What is the Maximum Data can a file adapter can send at a time.

    Hi ,
    What is the Maximum Data can a file adapter can send at a time.Is there any maximum limit data can adapters will send.
    can any one help on this.
    regrads
    Raghu

    Hi Reddy,
    I have raised the same question and I got correct answer.
    Refer the below thread which will give u information.
    Wat is the maximu size of data XI can handle
    Thnx
    Chirag

  • How we will change the lowercase data in flat file to uppercase

    How can i change the lowercase date in flat file  after uploaded, out put should be uppercase.

    Hi ramana,
    See the example.
    DO.
       READ DATASET s_filename INTO I_TEMP.
       IF SY-SUBRC <> 0.
        EXIT.
       ELSE.
         move I_TEMP to I_FINALTAB.
         append I_FINALTAB.
         clear I_FINALTAB.
      ENDIF.
    ENDDO.
         In the above code we are moving the data form file to i_temp and i_temp to I_FINAL.
    Here before moving to i_FINAL.
    use  TRANSLATE i_temp to UPPSERCASE.
    Then move to i_final.
    Pls. reward if useful.

  • Java.io.NotSerializableException when overwrite the JTable data into .txt file

    hi everyone
    this is my first time to get help from sun forums
    i had java.io.NotSerializableException: java.lang.reflect.Constructor error when overwrite the JTable data into .txt file.
    At the beginning, the code will be generate successfully and the jtable will be showing out with the data that been save in the studio1.txt previously,
    but after i edit the data at the JTable, and when i trying to click the save button, the error had been showing out and i cannot succeed to save the JTable with the latest data.
    After this error, the code can't be run again and i had to copy the studio1.txt again to let the code run 1 more time.
    I hope i can get any solution at here and this will be very useful for me.
    the following is my code...some of it i create it with the GUI netbean
    but i dunno how to attach my .txt file with this forum
    did anyone need the .txt file?
    this is the code that suspect maybe some error here
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
    String filename = "studio1.txt";
              try {
                  FileOutputStream fos = new FileOutputStream(new File(filename));
                  ObjectOutputStream oos = new ObjectOutputStream(fos);
                   oos.writeObject(jTable2);
                   oos.close();
              catch(IOException e) {
                   System.out.println("Problem creating table file: " + e);
                   return;
              System.out.println("JTable correctly saved to file " + filename);
    }the full code will be at the next msg

    this is the part 1 of the code
    this is the full code...i had /*....*/ some of it to make it easier for reading
    package gui;
    import javax.swing.*;
    import java.io.*;
    public class timetables extends javax.swing.JFrame {
        public timetables() {
            initComponents();
        @SuppressWarnings("unchecked")
        private void initComponents() {
            jDialog1 = new javax.swing.JDialog();
            buttonGroup1 = new javax.swing.ButtonGroup();
            buttonGroup2 = new javax.swing.ButtonGroup();
            buttonGroup3 = new javax.swing.ButtonGroup();
            buttonGroup4 = new javax.swing.ButtonGroup();
            jTextField1 = new javax.swing.JTextField();
            jLayeredPane1 = new javax.swing.JLayeredPane();
            jLabel6 = new javax.swing.JLabel();
            jTabbedPane1 = new javax.swing.JTabbedPane();
            jScrollPane3 = new javax.swing.JScrollPane();
            jTable2 = new javax.swing.JTable();
            jScrollPane4 = new javax.swing.JScrollPane();
            jTable3 = new javax.swing.JTable();
            jButton1 = new javax.swing.JButton();
            jButton2 = new javax.swing.JButton();
    /*       org.jdesktop.layout.GroupLayout jDialog1Layout = new org.jdesktop.layout.GroupLayout(jDialog1.getContentPane());
            jDialog1.getContentPane().setLayout(jDialog1Layout);
            jDialog1Layout.setHorizontalGroup(
                jDialog1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                .add(0, 400, Short.MAX_VALUE)
            jDialog1Layout.setVerticalGroup(
                jDialog1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                .add(0, 300, Short.MAX_VALUE)
            setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
            jLayeredPane1.add(jLabel6, javax.swing.JLayeredPane.DEFAULT_LAYER);
            String filename1 = "studio1.txt";
            try {
                   ObjectInputStream ois = new ObjectInputStream(new FileInputStream(filename1));
                   jTable2 = (JTable) ois.readObject();
                   System.out.println("reading for " + filename1);
              catch(Exception e) {
                   System.out.println("Problem reading back table from file: " + filename1);
                   return;
            try {
                   ObjectInputStream ois = new ObjectInputStream(new FileInputStream(filename1));
                   jTable3 = (JTable) ois.readObject();
                   System.out.println("reading for " + filename1);
              catch(Exception e) {
                   System.out.println("Problem reading back table from file: " + filename1);
                   return;
            jTable2.setRowHeight(20);
            jTable3.setRowHeight(20);
            jScrollPane3.setViewportView(jTable2);
            jScrollPane4.setViewportView(jTable3);
            jTable2.getColumnModel().getColumn(4).setResizable(false);
            jTable3.getColumnModel().getColumn(4).setResizable(false);
            jTabbedPane1.addTab("STUDIO 1", jScrollPane3);
            jTabbedPane1.addTab("STUDIO 2", jScrollPane4);
            jTextField1.setText("again n again");
            jLabel6.setText("jLabel5");
            jLabel6.setBounds(0, 0, -1, -1);
            jButton2.setText("jButton2");
            jButton1.setText("jButton1");
            jButton1.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    jButton1ActionPerformed(evt);
          

  • IS BT CLOUD ALTERING THE "MODIFIED DATE" ON MY FIL...

    Hi
    I have BT Cloud 2GB Free running as both the downloaded "auto sync" software and also using the Chrome Browser Interface. I am on Windows XP.
    I only use Cloud to backup word / excel documents and family photos - basic things I just dont want to risk losing.
    I recently noticed something odd, when I sorted my BT Cloud View by "Date Modified" about twenty very 'old' files suddenly appeared at the top of the view - files I hadnt used in about 5 or 6 years.
    I definitely had not accessed these files yet when I went to look at them in "My Computer" and clicked on "Properties" I could see that the "Modified Date" had changed. In fact it seems that about a dozen or so files had been "modified" over night while my PC was left on in the next room. No other dates had changed on the files - it did not look like they had been "Re-Saved" I dont think since the original author had not changed.
    I started to monitor this and noticed about half a dozen files having their "modified dates" changed every day for the last three or four days. Its only Documents (Word Powerpoint Excel Text etc) that are being modified.
    And heres the thing - I ran a search on my computer of files modified in the last week and the only ones where I could not explain the change were files that are being backed up by "BT CLOUD" so its slightly possible there is a link. Of course this could be coincidence but I thought this might be a good initial avenue to explore since without BT Cloud's interface view of my files I would never have even noticed the problem in the first place.
    I'm pretty sure its not a Virus - I run my own Scanner every few days, its always up to date and I have Real Time Scanning enabled. I also ran a couple of online scans last night (Norton etc) and they found nothing.
    Its a recent development because I use Cloud every week and would have noticed before if things were changing.
    So a couple of questions really:
    Firstly has anyone else experienced this problem - I read somewhere that Some Virus Scanners can alter the Modified Date on your files unintentionally but the MS hotfix says this only happens in Vista/Win 7 I think and I am on XP. Could it be that when BT Cloud Scans the file it affects its modified date on your PC ?
    Secondly Could anyone else access my files in BT Cloud and modify them, and if so would that change to the 'online file' be represented back on my own PC when I "Synced" my backup
    Many thanks in advance for any help anyone can offer.

    I assume your raws are in DNG format? If xmp is in sidecar, it won't change raw file date.
    Anyway, saving xmp does not change any dates in Lightroom, so you should still be able to sort by edit time or capture time...
    But if you want control, you have to save manually instead of automatically.
    Two things that might help:
    1. Filter based on metadata status.
    2. robcole.com - DNGPreviewUpdater
    Rob

  • Audio capture and converting the audio data to .wav file

    hi,
    i am new to applet and javax.sound and trying to build online recorder SDK in applet. I could captured the audio data and play the sound from microphone and also store the audio data to .wav file successfully. But when try to play that file from Window Media Player, i got the message "Windows Media Player cannot play the file. The file is either corrupt or the Player does not support the format you are trying to play." I have tried it all in different way but it's not working for last 5-6 days. Is there anyone who could help me , my work is stocked b'coz of this.
    Thanks

    this is the thread in which i am storing the audio data from audio stream to .wav file
    class CaptureThread extends Thread{
                          public void run(){
                                      AudioFileFormat.Type fileType = AudioFileFormat.Type.WAVE;
                                      File audioFile = new File("junk.wav");
                                       try{
                                       final AudioFormat format = getFormat();
                                             line.open(format);
                                          line.start();
                                             AudioSystem.write(
                                              new AudioInputStream(line),
                                              fileType,audioFile);
                                        }catch (Exception e){
                                             e.printStackTrace();
                                          }//end catch
                                     }//end run
                        }//end inner class CaptureThread

  • How to insert data from *.dmp file to  oracle 11g using Oracle SQL Develope

    hi
    i backup my database using PL/SQL developer and made *.dmp file
    how to insert data from *.dmp file to oracle 11g using Oracle SQL Developer 2.1.1.64
    and how to make *.dmp file from sql*plus ?
    thanks in advance

    Pl/Sql developer has a config window, there you choose the exec to do the import/export.
    Find it and his home version, it may be exp or expdp, the home version is the version of the client where the exp executable is.
    Then use the same version of imp or impdp to execute the import, you do not need to use Oracle SQL Developer 2.1.1.64. If you want to use it, you must have the same version in the oracle home that exp/imp of sql developer use.

Maybe you are looking for

  • Save Workbook in a role in SAP BI

    Hi All, I'm facing an issue in SAP BI 7.0 Security . I have created a Workbook role for a user which she is not able to view when she goes to RRMX>Save Workbook>  . The user has all the required authorizations and she can see all the other workbook r

  • Page breaks missing

    i have two repeating frames in my rdf. both repeating frames have the maximum records setting set to 1 in their property palettes. i also tried using insert page break before set to 'yes' for the first repeating frame and insert page break after set

  • HT4208 Purchased

    I can not see item list in Purchased on Updates of the App Store, after updating ios6. The App Store is down when is click the Purchased, so please help me.

  • Why can't I download Creative Cloud apps when running Linux?

    Using Linux (Mint), when trying to download any CC app, e.g. Photoshop CC I am told: "You are running an operating system that Photoshop no longer supports. Refer to the system requirements below for a full list of supported platforms." I have an act

  • Aperture 3.0.1 Problem with Importing Images

    The problem I am experiencing with Aperture 3 is that often when I am trying to import images to a project, the images "do not show up" in the import window. In other words, Aperture doesn't "see" the images I am trying to import. Here's what I mean,