Berechtigungen für Angebot überarbeiten

11. Februar 2010 10:41

Hallo Zusammen,

welche Berechtigungen werden noch benötigt um ein aktives Angebot überarbeiten zu können, als "Angeobte bearbeiten"?
Ein angebot, das im Entwurf steht kann ich bearbeiten und neue erstellen geht auch :-(

habt ihr eine Idee?

Vielen Danke
Pascal

Re: Berechtigungen für Angebot überarbeiten

11. Februar 2010 15:18

Hallo Pascal,

ich bin nicht sicher, was du gerade vorhast. Ein einmal aktiviertes Angebot kann nicht bearbeitet werden. Du kannst nur eine neue Version des Angebotes aus dem aktivierten Angebot erstellen.

Re: Berechtigungen für Angebot überarbeiten

11. Februar 2010 15:26

Hallo Michael,

genau das meine ich. Es gibt die Aktion "überarbeiten" wenn ich da draufklicke kommt ein Zugriff verweigert. Habe aber keien Ahnung warum...

Danke
Pascal

Re: Berechtigungen für Angebot überarbeiten

11. Februar 2010 15:31

Hallo Pascal,

die Rechte für ein Angebot werden einmal über die Rechte auf die Entität selbst und dann über die Rechte zum überschreiben des Preises auf dem gleichen Reiter eingesellt.

Hast du diese Rechte überprüft?

Re: Berechtigungen für Angebot überarbeiten

11. Februar 2010 17:22

Hallo,

die sollten passen :-(

angebotsberechtigungen.JPG


Viele Grüße
Pascal
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: Berechtigungen für Angebot überarbeiten

11. Februar 2010 19:12

Hallo Pascal,

das sieht erst einmal richtig aus. Was für eine Fehlermeldung kommt denn? Steht was im Event Log oder im Trace des CRM Servers?

Re: Berechtigungen für Angebot überarbeiten

12. Februar 2010 09:59

Hallo,

die Fehlermeldung sagt folgendes:

Serverfehler in der Anwendung /.
--------------------------------------------------------------------------------

SecLib::AccessCheckEx failed. Returned hr = -2147187962, ObjectID: 00000000-0000-0000-0000-000000000000, OwningUser: 659044b3-3d31-dd11-8e83-00155d00ec00 and CallingUser: 3844a9a8-840a-df11-9572-00155d00ec00
Beschreibung: Unbehandelte Ausnahme beim Ausführen der aktuellen Webanforderung. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über diesen Fehler anzuzeigen und festzustellen, wo der Fehler im Code verursacht wurde.

Ausnahmedetails: Microsoft.Crm.BusinessEntities.CrmSecurityException: SecLib::AccessCheckEx failed. Returned hr = -2147187962, ObjectID: 00000000-0000-0000-0000-000000000000, OwningUser: 659044b3-3d31-dd11-8e83-00155d00ec00 and CallingUser: 3844a9a8-840a-df11-9572-00155d00ec00

Quellfehler:

Beim Ausführen der aktuellen Webanforderung wurde einen unbehandelte Ausnahme generiert. Informationen über den Ursprung und die Position der Ausnahme können mit der Ausnahmestapelüberwachung angezeigt werden.

Stapelüberwachung:


[CrmSecurityException: SecLib::AccessCheckEx failed. Returned hr = -2147187962, ObjectID: 00000000-0000-0000-0000-000000000000, OwningUser: 659044b3-3d31-dd11-8e83-00155d00ec00 and CallingUser: 3844a9a8-840a-df11-9572-00155d00ec00]
Microsoft.Crm.BusinessEntities.SecurityLibrary.AccessCheckEx(ExecutionContext context, Guid owninguser, Guid objectId, Int32 objectTypeCode, Guid objectBusinessUnitId, AccessRights rights) +501
Microsoft.Crm.BusinessEntities.SecurityLibrary.AccessCheckEx(ExecutionContext context, SecurityAttributes attributes, AccessRights rights) +191
Microsoft.Crm.BusinessEntities.SecurityExtension.PreCreateHandlerEntityPrivilegeCheck(Object sender, SecurityTraits traits, SecurityAttributes attributes, ExtensionEventArgs e) +821
Microsoft.Crm.BusinessEntities.SecurityExtension.PreCreateHandler(ExtensionEventArgs e, Object sender) +165
Microsoft.Crm.BusinessEntities.SecurityExtension.PreCreateHandler(Object sender, ExtensionEventArgs e) +11
Microsoft.Crm.BusinessEntities.PreCreateEventHandler.Invoke(Object sender, ExtensionEventArgs e) +0
Microsoft.Crm.BusinessEntities.BusinessProcessObject.Create(IBusinessEntity entity, ExecutionContext context) +152
Microsoft.Crm.ObjectModel.QOIService.Create(IBusinessEntity qoi, ExecutionContext context, Boolean calculatePrice) +1073
Microsoft.Crm.ObjectModel.QuoteService.Create(IBusinessEntity qoi, ExecutionContext context) +11
Microsoft.Crm.ObjectModel.QuoteService.Revise(Guid quoteId, EntityExpression entityExpression, ExecutionContext context) +1060

[TargetInvocationException: Ein Aufrufziel hat einen Ausnahmefehler verursacht.]
System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) +0
System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) +71
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) +261
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +29
System.Web.Services.Protocols.LogicalMethodInfo.Invoke(Object target, Object[] values) +138
Microsoft.Crm.Extensibility.InternalOperationPlugin.Execute(IPluginExecutionContext context) +133
Microsoft.Crm.Extensibility.PluginStep.Execute(PipelineExecutionContext context) +338
Microsoft.Crm.Extensibility.Pipeline.Execute(PipelineExecutionContext context) +325
Microsoft.Crm.Extensibility.MessageProcessor.Execute(PipelineExecutionContext context) +1262
Microsoft.Crm.Extensibility.InternalMessageDispatcher.Execute(PipelineExecutionContext context) +179
Microsoft.Crm.Extensibility.ExternalMessageDispatcher.Execute(String messageName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, PropertyBag fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId) +835
Microsoft.Crm.Sdk.RequestBase.Process(Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId) +77
Microsoft.Crm.Sdk.RequestBase.Process(CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId) +152
Microsoft.Crm.Sdk.CrmServiceInternal.Execute(RequestBase request, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId) +316
Microsoft.Crm.Sdk.InProcessCrmService.Execute(Object request) +1463
Microsoft.Crm.Application.Platform.ServiceCommands.PlatformCommand.ExecuteInternal() +260
Microsoft.Crm.Application.Platform.ServiceCommands.ReviseQuoteCommand.Execute() +9
Microsoft.Crm.Application.Platform.Quote.CreateRevision() +92
Microsoft.Crm.Web.SFA.QuoteDetailPage.createRevision(Object sender, DataEventArgs e) +273
Microsoft.Crm.Application.Forms.DataEventProcessor.Raise(FormEventId eventId, FormState state, IUser user, String objectId, Entity entity) +142
Microsoft.Crm.Application.Forms.AppForm.RaiseDataEvent(FormEventId eventId) +131
Microsoft.Crm.Application.Forms.EndUserForm.Initialize(Entity entity) +59
Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity, String formType) +90
Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity) +11
Microsoft.Crm.Web.SFA.QuoteDetailPage.ConfigureForm() +419
Microsoft.Crm.Application.Controls.AppUIPage.OnPreRender(EventArgs e) +32
System.Web.UI.Control.PreRenderRecursiveInternal() +80
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +842





Und der Enduser sieht halt "Zugriff Verweigert"

Im Eventlog steht

Ereigniscode: 3005
Ereignismeldung: Es ist eine unbehandelte Ausnahme aufgetreten.
Ereigniszeit: 12.02.2010 08:53:59
Ereigniszeit (UTC): 12.02.2010 07:53:59
Ereignis-ID: ad737c62415e4104957b870766e87674
Ereignissequenz: 748
Vorkommen: 1
Ereignisdetailcode: 0

Anwendungsinformationen:
Anwendungsdomäne: /LM/W3SVC/1/ROOT-1-129103802360250190
Vertrauensebene: Full
Virtueller Anwendungspfad: /
Anwendungspfad: c:\inetpub\wwwroot\
Computername: SRV-PB-CRM01

Prozessinformationen:
Prozess-ID: 3084
Prozessname: w3wp.exe
Kontoname: NT-AUTORITÄT\NETZWERKDIENST

Ausnahmeinformationen:
Ausnahmetyp: TargetInvocationException
Ausnahmemeldung: Ein Aufrufziel hat einen Ausnahmefehler verursacht.

Anforderungsinformationen:
Anforderungs-URL: http://srv-pb-crm01/orga/sfa/quotes/edit.aspx?id={CDE79B54-DA10-DF11-9572-00155D00EC00}
Anforderungspfad: /orga/sfa/quotes/edit.aspx
Benutzerhostadresse: 10.213.6.46
Benutzer: domain\crmtest2
Ist authentifiziert: True
Authentifizierungstyp: Negotiate
Threadkontoname: NT-AUTORITÄT\NETZWERKDIENST

Threadinformationen:
Thread-ID: 14
Threadkontoname: NT-AUTORITÄT\NETZWERKDIENST
Identitätswechsel für: False
Stapelüberwachung: bei System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
bei System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
bei System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
bei System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
bei System.Web.Services.Protocols.LogicalMethodInfo.Invoke(Object target, Object[] values)
bei Microsoft.Crm.Extensibility.InternalOperationPlugin.Execute(IPluginExecutionContext context)
bei Microsoft.Crm.Extensibility.PluginStep.Execute(PipelineExecutionContext context)
bei Microsoft.Crm.Extensibility.Pipeline.Execute(PipelineExecutionContext context)
bei Microsoft.Crm.Extensibility.MessageProcessor.Execute(PipelineExecutionContext context)
bei Microsoft.Crm.Extensibility.InternalMessageDispatcher.Execute(PipelineExecutionContext context)
bei Microsoft.Crm.Extensibility.ExternalMessageDispatcher.Execute(String messageName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, PropertyBag fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
bei Microsoft.Crm.Sdk.RequestBase.Process(Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
bei Microsoft.Crm.Sdk.RequestBase.Process(CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
bei Microsoft.Crm.Sdk.CrmServiceInternal.Execute(RequestBase request, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
bei Microsoft.Crm.Sdk.InProcessCrmService.Execute(Object request)
bei Microsoft.Crm.Application.Platform.ServiceCommands.PlatformCommand.ExecuteInternal()
bei Microsoft.Crm.Application.Platform.ServiceCommands.ReviseQuoteCommand.Execute()
bei Microsoft.Crm.Application.Platform.Quote.CreateRevision()
bei Microsoft.Crm.Web.SFA.QuoteDetailPage.createRevision(Object sender, DataEventArgs e)
bei Microsoft.Crm.Application.Forms.DataEventProcessor.Raise(FormEventId eventId, FormState state, IUser user, String objectId, Entity entity)
bei Microsoft.Crm.Application.Forms.AppForm.RaiseDataEvent(FormEventId eventId)
bei Microsoft.Crm.Application.Forms.EndUserForm.Initialize(Entity entity)
bei Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity, String formType)
bei Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity)
bei Microsoft.Crm.Web.SFA.QuoteDetailPage.ConfigureForm()
bei Microsoft.Crm.Application.Controls.AppUIPage.OnPreRender(EventArgs e)
bei System.Web.UI.Control.PreRenderRecursiveInternal()
bei System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Re: Berechtigungen für Angebot überarbeiten

12. Februar 2010 10:35

Hallo Pascal,

in dem Log steht, das der Owning User und der Calling User unterschiedlich sind, du also das Angebot mit einem anderen Benutzer ändern willt. Was passiert, wenn du das Angebot mit dem Benutzer änderst, der das Angebot auch erstellt hat?