eigene Ansicht für alle Firmen eines PLZ Gebietes

الإجابة eigene Ansicht für alle Firmen eines PLZ Gebietes

  • 6. juli 2012 10:31
     
     

    Hallo zusammen,

    ist es möglich eine Formularansicht zu definieren, die sich danach richtet in welchem PLZ Gebiet sich eine Firma einer VKC befindet? 

    Konkret sieht das dann folgendermaßen aus:

    Ein User A hat die Sicherheitsrolle PLZ1.

    Er darf von der Sicherheitsrolle her alle VKCs sehen. 

    Ich möchte nun über eine Formularansicht definieren welche Felder er sehen darf.

    Soweit ja kein Problem.

    Aber das Ganze soll sich nach den PLZ Gebieten richten.

    Das heißt bei VKCs aus seinem PLZ Gebiet soll er eine andere Formularansicht haben als bei VKCs aus einem anderen PLZ Gebiet.

    Bin für jede Hilfe dankbar.

    VG

    Martin

Alle besvarelser

  • 6. juli 2012 16:38
    Redaktør
     
     

    Hallo Martin,

    das kannst du am einfachsten über JavaScript realisieren. Du musst nur ermitteln, zu welchem PLZ Gebiet die Firma gehört und dann die Felder entsprechend ein- und ausblenden.


    Viele Grüße

    Michael Sulz
    MVP für Microsoft Dynamics CRM
    Blog
    Website XING LinkedIn Facebook Twitter

  • 6. juli 2012 17:58
     
     

    Hallo Martin, Hallo Michael,

    die Lösung per JavaScript ist nicht so ganz super sicher.

    1. Die Daten werden trotzdem übertragen.

    2. Die Felder werden immer erst gerendert und dann ausgeblendet. Das kann auf einem langsamen Client dazu führen das die Felder einen Augenblick sichtbar bleiben.

    3. Mit der erweiterten Suche und dem Einblenden aller Spalten ist die Lösung dann gänzlich ausgehebelt.

    Vielleicht bildest Du Teams für die PLZ Bereiche und weißt den Teams den Besitz per Workflow abhängig von der PLZ zu.
    Falls das die Anforderungen des Kunden zulassen.

    Grüße

    Thomas

  • 8. juli 2012 21:35
     
     

    Hallo Thomas,

    genau so machen wirs bei Firmen und Kontaktdatensätzen.

    Bei den Verkaufschancen geht das leider nicht, da das gesamte Reporting über den Besitz der VKCs gesteuert wird.

    Hatte auch den Vorschlag gemacht das Reporting dann entsprechend umzustellen, was aber abgelehnt wurde.

    VG

    Martin

  • 8. juli 2012 22:12
     
     Svar

    Hallo Martin,

    nun wenn das abgelehnt wurde, obwohl ihr genau diese Konzept bereits erfolgreich anwendet, dann wären natürlich die Gründe interessant zu hören.

    Sollte es darum gehen die VKs pro Benutzer auswerten zu können würde ein Lookup Feld "Bearbeiter" Lookup auf den Systemuser genügen und das Reporting sollte in wenigen Stunden anzupassen sein.

    Wenn das nicht sein soll, dann machst Du es umgekehrt. Beobachte per Workflow die PLZ gib per Worklow ein Share für das jeweilige Team.

    http://crm2011workflowutils.codeplex.com/ sollte dir helfen, damit du die "Share" Workflow Aktivität nicht selbst coden musst.

    Um es gesagt zu haben Shares sind Gift für die Performance. Das nur falls Du noch ein Argument benötigst ;-)

    Grüße

    Thomas

  • 9. juli 2012 06:19
     
     

    Hallo Thomas,

    das Plugin hab ich auch schon gefunden, habe aber Probleme dabei es zu registrieren.

    Bekomme folgenden Fehler:

    Unhandled Exception: System.IO.FileLoadException: Could not load file or assembly 'file:///C:\Users\admincrm\Desktop\Plugin Registration Tool\PluginRegistration.exe' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)
       at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
       at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection, Boolean suppressSecurityChecks)
       at System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks, StackCrawlMark& stackMark)
       at System.Reflection.Assembly.LoadFrom(String assemblyFile, Evidence securityEvidence)
       at System.Activator.CreateInstanceFromInternal(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo)
       at System.AppDomain.CreateInstanceFrom(String assemblyFile, String typeName)
       at System.AppDomain.CreateInstanceFromAndUnwrap(String assemblyName, String typeName)
       at System.AppDomain.CreateInstanceFromAndUnwrap(String assemblyName, String typeName)
       at PluginRegistrationTool.AppDomainContext`1..ctor()
       at PluginRegistrationTool.RegistrationHelper.RetrievePluginsFromAssembly(String pathToAssembly)
       at PluginRegistrationTool.PluginRegistrationForm.btnLoadAssembly_Click(Object sender, EventArgs e)
    Inner Exception: System.NotSupportedException: An attempt was made to load an assembly from a network location which would have caused the assembly to be sandboxed in previous versions of the .NET Framework. This release of the .NET Framework does not enable CAS policy by default, so this load may be dangerous. If this load is not intended to sandbox the assembly, please enable the loadFromRemoteSources switch. See http://go.microsoft.com/fwlink/?LinkId=155569 for more information.

    Kannst du mir dabei weiter helfen? 

    VG und THX 

    Martin

  • 9. juli 2012 06:40
     
     

    Sorry, Kommando zurück.

    Stand aufm Schlauch.

    Aber mit dem Workflow wirds funktionieren. Ich schlage die Lösung mit entsprechender Einschränkung vor und schau dann mal weiter.

    So habe ich jetzt zwei Wege die ich gehen kann.

    Vielen Dank für die Hilfe.

    VG

    Martin

  • 9. juli 2012 09:14
     
     

    Hallo Thomas,

    eine Frage habe ich da dennoch.

    Wenn ich mir eine Ansicht für das Team baue, dem ich den Datensatz freigebe, muss ich hier einige Felder ausblenden, die erforderlich sind. Diese kann ich leider über ein Formular nicht ausblenden, bzw entfernen.

    Wie regel ich das am besten? 

    VG

    Martin