Custom Permission Level Contribute No Delete not working

I have created a custom permission level that is the same as OOTB Contribute, except it doesn't have the Delete Items nor Delete Versions.
In my document libraries, I have "require documents to be checked out" set to Yes.
This is causing some strange behaviour.  When a user (that has my custom Contribute No Delete permission) tries to open a document for editing, they get a message that the document is checked out to their own username, and it won't allow
them to edit the document.
What is the best way to remove the "Delete" permission?  We absolutely need this.
thanks!

Are you given an option to check it back in via the "back-stage" area? 
I'd also say that the highest permission grouping wins.  If one group grants a right and another removes it, the additive grouping will win out.  As well as checking the inheritance, it's ideal to remove permissions that might grant this.
Steven Andrews
SharePoint Business Analyst: LiveNation Entertainment
Blog: baron72.wordpress.com
Twitter: Follow @backpackerd00d
My Wiki Articles:
CodePlex Corner Series
Please remember to mark your question as "answered" if this solves (or helps) your problem.

Similar Messages

  • Custom permission levels don't work

    I have created a custom permission level group called custom contribute. The group permission seems to work fine and smoothly one day. The next day that it seems that users of the group can access the site but they cannot do anything else on the site without
    receiving the tell us why you need access message.
    The users in the group are accessing SharePoint from all over the world. Is there something that I can check within the settings  to see why they have access one day and the next they don't? Or is SharePoint setup this way?
    I have full control of the site and nothing changes from day to day. Any help or suggestions on this would be greatly appreciated.

    Hi kedge11,
    Please check permissions for the users with this custom permission level from problematic SharePoint site, verify if they still have the expected custom contribute permissions.
    Also test if this issue could be reproduced, if not, please re-create another same custom permissions for these users again.
    If issue still persists, please check ULS log when this error occurs, it should provide some useful information for helping solve issue.
    Thanks
    Daniel Yang
    TechNet Community Support

  • Check if Custom Permission level exists or not

    I have cretaed a custom permission level.
    On feature activation, i need to check if that custom permission level exists or not. How can i do that?
    Thanks,
    Avni Bhatt

    Check if below helps
    SPWeb web = SPContext.Current.Web;
    // Validate the page request to avoid
    // any malicious posts
    if (Request.HttpMethod == “POST”)
       SPUtility.ValidateFormDigest();
    // Get a reference the roles that are
    // bound to the current user and the role
    // definition to which we need to verify
    // the user against
    SPRoleDefinitionBindingCollection usersRoles = web.AllRolesForCurrentUser;
    SPRoleDefinitionCollection roleDefinitions = web.RoleDefinitions;
    SPRoleDefinition roleDefinition = roleDefinitions["Full Control"];
    // Check if the user is in the role. If not
    // redirect the user to the access denied page
    if (usersRoles.Contains(roleDefinition))
       //Check if post back to run
       //code that initiates the page
       if (IsPostBack != true)
        //Do your stuff here
    else
       Response.Redirect(“/_layouts/accessdenied.aspx”);
    http://blog.rafelo.com/2008/10/13/programmatically-checking-user-roles-or-permission-levels-in-sharepoint-2007/
    http://yoursandmyideas.wordpress.com/2011/10/08/setting-custom-permission-levels-in-sharepoint-programmatically/
    Or check if it exist and then delete and recreate it
    string[] yourCustomRoles = {"Level1", "Level2"};
    using (var web = spSite.OpenWeb())
    var roles = web.RoleDefinitions;
    foreach(var levelName in yourCustomRoles)
    try
    roles[levelName];
    roles.Delete(levelName);
    catch(Exception)
    // web has no this role
    //Add code here
    http://go4answers.webhost4life.com/Example/delete-specific-permissions-108626.aspx

  • Why do my Contribute connection keys not work?

    I am using CS4  The connection keys that I create as a Contribute administrator do not work.  Now sure why that is, because my own connection as administrator DOES work.
    When I generate the connection key, I check "include the FTP username and password, and I have checked "Use passive FTP to connect to the server" in the Advanced Connection settings. In the "Would you like to send your current settings, I check "Yes", and I check" Include my FTP username and password. When the recipient of the connection key clicks on it, and enters his password, we get the following error message:
    "Your username or password is incorrect.  Please check your connection information."
    I have tried this a number of times.  I have even deleted the _mm folder on the server and started all over again.
    Thank you for any assistance you can provide.

    What tells you that?

  • Why my DELETE not WORK with  BULLKCOLLECT ?

    Cursor Cur_Del (p_AnoMes IN varchar2) IS
    SELECT A.OBJECTID
    FROM mytable A
    WHERE A.YEAR_MONTH = p_AnoMes;
    OPEN Cur_Del(p_YEARMONTH);
    LOOP
              FETCH Cur_Del BULK COLLECT INTO v_obj_tab LIMIT 200;
              FORALL i IN 1 .. v_obj_tab.COUNT
              DELETE FROM CIRCUITSOURCECUSTCLASS_DB WHERE OBJECTID = v_obj_tab(i);
              COMMIT;
              EXIT WHEN Cur_Del%NOTFOUND;
    END LOOP;

    SQL> create table mytable
      2  as
      3  select l objectid, '20060' || to_char(mod(l,2)+1) year_month
      4    from (select level l from dual connect by level <= 1000)
      5  /
    Tabel is aangemaakt.
    SQL>
    SQL> create table circuitsourcecustclass_db
      2  as
      3  select l objectid from (select level l from dual connect by level <= 1000
      4  /
    Tabel is aangemaakt.
    SQL>
    SQL> create type muttleychess_type as table of number;
      2  /
    Type is aangemaakt.
    SQL>
    SQL> select year_month,count(*) from mytable group by year_month
      2  /
    YEAR_MONTH
                                  COUNT(*)
    200601
                                       500
    200602
                                       500
    SQL>
    SQL> select count(*) from circuitsourcecustclass_db
      2  /
                                  COUNT(*)
                                      1000
    SQL>
    SQL> declare
      2    Cursor Cur_Del (p_AnoMes IN varchar2)
      3    IS
      4    SELECT A.OBJECTID
      5    FROM mytable A
      6    WHERE A.YEAR_MONTH = p_AnoMes;
      7    v_obj_tab muttleychess_type;
      8  begin
      9    OPEN Cur_Del('200601');
    10    LOOP
    11      FETCH Cur_Del BULK COLLECT INTO v_obj_tab LIMIT 200;
    12      dbms_output.put_line(v_obj_tab.count);
    13      FORALL i IN 1 .. v_obj_tab.COUNT
    14      DELETE FROM CIRCUITSOURCECUSTCLASS_DB WHERE OBJECTID = v_obj_tab(i);
    15      COMMIT;
    16      EXIT WHEN Cur_Del%NOTFOUND;
    17    END LOOP;
    18  end;
    19  /
    200
    200
    100
    PL/SQL-procedure is geslaagd.
    SQL>
    SQL> select count(*) from circuitsourcecustclass_db
      2  /
                                  COUNT(*)
                                       500So it seems to work.
    A couple of remarks:
    - Please change the datatype of p_AnoMes to a date or maybe a number
    - Please post everything next time, because we can only guess what exactly does "not work" with your example.
    Regards,
    Rob.

  • Allow Custom Text Entry for Drop down not working For Dynamic form

    Dear All,
    In drop down field Allow custom text entry is working fine if the form is save as a static pdf form file.But if the form is save as a Dynamic pdf form file it is not working.I can enter custom text in drop down field but after filling it up when I click on next field the text from the drop down is disappearing.
    If any body can please help me to solve this problem.
    Thanks a lot in advance
    Regards
    Rakesh

    Dear Jimmypham,
    Thanks a lot for your quick response.But it's not working for me.I have even tried with a form having only single field and save it as a dynamic pdf file.In that form also it's not working.The text which I have entered is disappearing when I click outside of this field.
    Can you please help me to find out the solution for this problem.
    Regards
    Rakesh

  • Setting the custom master page through powershell is NOT working

    Hi,
     I am writing the below code to set the  custom master page through powershell.
    But its not working .when i went to site settings-->master page --> in the drodown , the  maste page set is seattle.master ONLY, though my current master page is available in the dropdown.
     Can anyone pls help, whether i am missing in the below :
          Add-PSSnapin Microsoft.SharePoint.Powershell
           $SiteURL = "http://srvr1:22307/sites/SPW5"
        $weburl= $SiteURL
        $Site= Get-SPSite $SiteURL
        $web =  $Site.OpenWeb()
    $web.CustomMasterUrl = "/_catalogs/masterpage/myMasterpage.master"
    $web.MasterUrl = "/_catalogs/masterpage/myMasterpage.master"
    $web.Update()
    Das

    Hi,
    Is it a publishing page? If yes can you try the PowerShell scripts corresponding to the following code snippet?
    var publishingWeb = PublishingWeb.GetPublishingWeb(web);
    publishingWeb.CustomMasterUrl.SetInherit(inheritFromParent, false);
    publishingWeb.CustomMasterUrl.SetValue(masterPageUrl, false);
    publishingWeb.MasterUrl.SetInherit(inheritFromParent, false);
    publishingWeb.MasterUrl.SetValue(masterPageUrl, false);
    I've noticed sometime (not sure though) that Master page doesn't get updated if the inherit property is not updated first.
    Thanks,
    Sohel Rana
    http://ranaictiu-technicalblog.blogspot.com

  • Command+Delete not working in iTunes 10.1.2

    Just noticed this since updating. The 'Delete' option under 'Edit' is not selectable and the Command+Delete option yields no results.
    Anyone else have this problem?

    It's been intermittently working for me. Dragging the song to the Trash does not work either. Usually a restart takes care of it but I've also repaired permissions as well as an Archive and Install of the OS. Odd.

  • Insert , Update & Delete Not working in BDB Berkley Database

    Hi,
    Anybody has used Oracle ADF & BDB ,to insert/ update & delete?
    imported db.jar,dbexample.jar,sqlite.jar ,derby.jar. still not working (Only Query working)
    Pls lets us know

    Hi,
    Do you have a small test case program that demonstrates this? A JDeveloper project showing what exactly is the problem when trying to use the BDB SQL JDBC driver to insert data into the BDB SQL database? What do you mean by "not working", do you get any errors, you do not get errors but you do not see the data in the database etc?
    What are the versions of Java, JDeveloper, ADF and BDB SQL you are using, and on what OS?
    Regards,
    Andrei

  • Table Data delete not working

    Hi,
    I m trying to simply delete all records in a Z table. I insert data into this table from another program. Until 1/2 hr ago both insertions and deletions were working fine. But now suddently the delete program is hanging on statement
    DELETE FROM SAPR3.ZMYTABLE.
    The table has no lock objects, nor m I explicitly locking the table in the insert program. Please help at the earliest, points will be given to right answer. Thank you for reading.

    Hi Srikrishna,
    Please try to use standard program RADCVBTC to delete all records from your custom program.
    OBJ_NAME = <custom table>
    OBJ_TYPE = 'TABL'
    FCT      = 'MDF'
    Hope this will help.
    Regards,
    Ferry Lianto

  • Multi-Row insert/update/delete not working via db-link

    App. Version: 2.0.0.00.49
    DB: Oracle 9i, not sure about the build
    Problem: Multirow Update/Insert/Delete doesn't work via db-link.
    Error received: ....ORA-1460: unimplemented or unreasonable conversion requested....
    Where: Tabular Form generated via Wizard
    Side note: It's working properly when local table(s) is/are used, it's not working via db-link or view.
    I've encountered this error with single update/insert/delete operations before, but was able to fix it via using temp-variables (v_xyz := :Px_xyz; as the proposed v('Px_xyz') was really slow with my scripts)...but with the automated DML-action I don't see a way to edit it accordingly.
    Workaround found:
    1a) Use local* collection on HTML-DB-Server, then write single row updates/deletes/inserts to the remote DB via DB-Link
    1b) Use local* table on HTML-DB-Server, then write single row updates/deletes/inserts to the remote DB via DB-Link
    * Local = on the same server that HTML-DB is running on...
    So,...to my questions:
    1. Can someone confirm that this is a "known feature" (aka bug)?
    2. Can someone tell me if this "known feature" has been eliminated in the newer version of HTML-DB/APEX (> 2.0.0.00.49)?
    Thanks.
    Ingo

    Hi,
    Do you have a small test case program that demonstrates this? A JDeveloper project showing what exactly is the problem when trying to use the BDB SQL JDBC driver to insert data into the BDB SQL database? What do you mean by "not working", do you get any errors, you do not get errors but you do not see the data in the database etc?
    What are the versions of Java, JDeveloper, ADF and BDB SQL you are using, and on what OS?
    Regards,
    Andrei

  • Customized keyboard shortcuts for microsoft Word not working

    Hi,
    My Macbook Pro retina 15' with an updated Yosemite iOS 10.10.1 has an american keyboard. I am trying to create keyboard shortcuts for brazilian accent marks to use in Microsoft Word. I went to "system preferences", "keyboard", "shortcuts", "App Shortcuts", added Microsoft Word and, for the brazilian accent mark " ˜ ", which in the original keyboard is obtained with "option+n", I set the shortcut "option+left arrow".
    It just does not work. I created other shortcuts for other brazilian accent marks with the other arrows + control but none of them worked.
    Can anyone tell me what went wrong?
    Thanks!

    Amy~ Yep the lasso tool was what I verified with another user. 'L' seems to be bound indefinitely to loop through different types of lasso tools and it was annoying them because they just wanted L to be the regular freehand lasso. I removed 'L' from being an option on the polygon lasso and even set it explicitly to SHIFT+L as well as set the lasso tool to a completely different keyboard combo. 'L' still cycled through lassos haha. It needs some fixes.
    fertolg~ At least you have a workaround for now. I'd go nuts if I couldn't use keyboard text selection writing code, oy! You're welcome and if you're all set please mark correct so we can filter unanswered. Good luck!

  • Cascade delete not working

    Hi,
    I can't seem to get cascade deleting to work even though I've set it up on
    the db side (SQL Server 2000)as well as follow the documentation to use
    the dependendent extension:
    From my 'package.jdo':
    <package name="test">
    <class name="Person" objectid-class="Person$ID" >
    <field name="personId" primary-key="true">
    <extension vendor-name="kodo" key="data-column"
    value="PersonId"/>
    </field>
    <field name="addresses" default-fetch-group="true">
    <collection element-type="Address"/>
    <extension vendor-name="kodo" key="element-dependent"
    value="true"/>
    </field>
    </class>
    <class name="Address" objectid-class="Address$ID" >
    <field name="personId" primary-key="true">
    <extension vendor-name="kodo" key="data-column"
    value="PersonId"/>
    </field>
    <field name="addressId" primary-key="true">
    <extension vendor-name="kodo" key="data-column"
    value="AddressId"/>
    </field>
    </class>
    </package>
    When I run the following code:
    Person.ID id = new Person.ID("" + 3);
    object = persistenceManager.getObjectById(id,false);
    if (object != null) {
    persistenceManager.currentTransaction().begin();
    persistenceManager.deletePersistent(object);
    persistenceManager.currentTransaction().commit();
    I get this exception:
    com.solarmetric.jdbc.ReportingSQLException: [MYDB]Incorrect syntax near
    the keyword 'WHERE'. {prepstmnt 6504030 UPDATE dbo.Address SET  WHERE
    PersonId = ? [params=(int) 5] [reused=0]} [code=156, state=01000]
    It looks like Kodo is trying to do an update on the dependent object,
    instead of a delete. Any ideas?
    D. May

    I got the same error even after changing the package.jdo to the following:
    <package name="org.uscentral.webach.domain.test">
    <class name="Address" objectid-class="Address$ID" >
    <field name="personId" primary-key="true">
    <extension vendor-name="kodo" key="data-column" value="PersonId"/>
    </field>
    <field name="addressId" primary-key="true">
    <extension vendor-name="kodo" key="data-column" value="AddressId"/>
    </field>
    </class>
    <class name="Person" objectid-class="Person$ID" >
    <field name="personId" primary-key="true">
    <extension vendor-name="kodo" key="data-column" value="PersonId"/>
    </field>
    <field name="addresses" default-fetch-group="true">
    <collection element-type="Address"/>
    <extension vendor-name="kodo" key="jdbc-delete-action"
    value="cascade"/>
    </field>
    </class>
    </package>
    Marc Prud'hommeaux wrote:
    Darrin-
    If you have cascade deletion happening on the server-side, they you want
    to use the "jdbc-delete-action" extension to notify Kodo of this, rather
    than the "dependent" extension (which tells Kodo to perform client-side
    cascading deletion).
    In article <[email protected]>, Darrin May wrote:
    Hi,
    I can't seem to get cascade deleting to work even though I've set it up on
    the db side (SQL Server 2000)as well as follow the documentation to use
    the dependendent extension:
    From my 'package.jdo':
    <package name="test">
    <class name="Person" objectid-class="Person$ID" >
    <field name="personId" primary-key="true">
    <extension vendor-name="kodo" key="data-column"
    value="PersonId"/>
    </field>
    <field name="addresses" default-fetch-group="true">
    <collection element-type="Address"/>
    <extension vendor-name="kodo" key="element-dependent"
    value="true"/>
    </field>
    </class>
    <class name="Address" objectid-class="Address$ID" >
    <field name="personId" primary-key="true">
    <extension vendor-name="kodo" key="data-column"
    value="PersonId"/>
    </field>
    <field name="addressId" primary-key="true">
    <extension vendor-name="kodo" key="data-column"
    value="AddressId"/>
    </field>
    </class>
    </package>
    When I run the following code:
    Person.ID id = new Person.ID("" + 3);
    object = persistenceManager.getObjectById(id,false);
    if (object != null) {
    persistenceManager.currentTransaction().begin();
    persistenceManager.deletePersistent(object);
    persistenceManager.currentTransaction().commit();
    I get this exception:
    com.solarmetric.jdbc.ReportingSQLException: [MYDB]Incorrect syntax near
    the keyword 'WHERE'. {prepstmnt 6504030 UPDATE dbo.Address SET  WHERE
    PersonId = ? [params=(int) 5] [reused=0]} [code=156, state=01000]
    It looks like Kodo is trying to do an update on the dependent object,
    instead of a delete. Any ideas?
    D. May
    Marc Prud'hommeaux
    SolarMetric Inc.

  • Custom code as an exception handler not working.

    Hi,
    I worked on Custom Handler for unauthorized access to a taskflow following the link below and it worked. But a special case in this doesn't work.
    http://download.oracle.com/docs/cd/E14571_01/web.1111/b31974/taskflows_complex.htm#ADFFD22602
    Scenario-1: I have a link that opens an unauthorized taskflow as blank page. I tried the solution of custom handler and am able to display message or display error page --- WORKS FINE
    Scenario-2: I have a link that opens an unauthorized taskflow in a pop-up as blank page. The above solution doesn't work. I tried displaying SOPs but nothing gets print --- DOESN'T WORK.
    Details:
    The custom handler doesn't work with Pop-ups. I have an unauthorized taskflow that gets called inside a pop-up using a link. Being an unauthorized user, I click on the link and it pops-up with a blank page. As per the custom handler it is supposed to display error-page. But it doesn't.
    I tried displaying SOPs inside the handleException method and nothing prints. The exception handler is unable to catch the exception. If this use-case throws some exception, my exception handler would have handle it but it doesn't raise any exception.
    Is this something issue that I need to discuss with FMW team?
    Any workaround for this would be of great help.
    Code Sample:
    public void handleException(FacesContext facesContext, Throwable throwable,
    PhaseId phaseId) throws Throwable {
    String errorMessage = throwable.getMessage();
    if (errorMessage != null && errorMessage.indexOf("ADFC-0619") > -1) {
    setEL("#{sessionScope.errorMessage}",
    "You are not authorized to view this page.");
    ExternalContext externalContext =
    facesContext.getExternalContext();
    externalContext.redirect("ErrorPage");
    } else {
    super.handleException(facesContext, throwable, phaseId);
    Thanks
    Raza

    Hi Frank,
    This scenario is not specific to a particular TaskFlow. In General, there are links in some views, that invokes taskflows and a particular user may not have permission to that TaskFlow. In this scenario, I am not sure where I need to define the method or router. And Hence I registered the Custom Exception Handler as a service as per the documentation.
    But the logic in documentation doesn't work with Pop-ups.
    Thanks
    Raza

  • Email Filter - level 1 notification filter not working

    I run a BES 5.0.2 system with 95 users and many rely on filters to forward alerts from a specific address and flag them as level 1.
    Messages Options\Email Filters
    Worked like a charm previously, but recently has stopped working.
    I've tried every which way, and the phones fail to recognize new filters for level 1 messages.
    We recently migrated our BES system to new hardware, but I don't know when this stopped working so don't know if\how it could be related.
    Any ideas?
    Curve 8330   v4.5.0.127
    Battery pull - no change
    Filter not showing on BES & Vice versa - seems like something isn't synching. Email and calendar synch AOK.
    Update - Interesting - On the BES server if I create the filter it works, but doesn't synch down to show on the BlackBerry. If created on the BlackBerry, it doesn't work and also doesn't sync up to the BES server.
    BES 5.0.4
    BES 10.2
    Exchange 2010
    SQL2008R2

    I opened an incident with RIM and after an hour of troubleshooting have partially narrowed it down and resolved the issue on my device - now for the other 90+.
    We did 2 things at once - changed to default policy, and secondly deleted the desktop sync and desktop cmime service books, then repushed them out from BES. This fixed it.
    Tech said I could push service books to all users, but didn't advise as to a way to delete service books via BAS.
    I checked a number of users and their service books are showing our old SRP info - so after the migration the new service books look like they haven't pushed down.
    BES 5.0.4
    BES 10.2
    Exchange 2010
    SQL2008R2

Maybe you are looking for