none
Zeige alle Verkaufschancen, die keinen Termin haben RRS feed

  • Frage

  • Hallo zusammen,

     

    entweder habe ich gerade einen riesen Denkfehler und es ist recht einfach oder es ist tatsächlich kniffelig.

    Jedenfalls möchte ich für einen Report via SQL Statement herausbekommen an welchen VKCs kein Termin dran hängt.

    Finde es nur schwer etwas abufragen was nicht da ist.

    Kann mir hier jemand helfen? 

     

    THX und VG

    Martin

    Mittwoch, 26. Januar 2011 14:34

Antworten

  • Könnte ich es auch folgendermaßen machen? 

    Hier an einem Beispiel was ich eben zusammengestellt habe:

    select fop.new_kampagneidname
    ,fop.name
    ,fop.createdon
    ,fop.owneridname
    ,fop.new_kampagneid
    ,fop.opportunityid
    , (datediff(day,fap.scheduledend,getutcdate())-@Zeitraum ) As Referenz
    
    From filteredopportunity fop
    
    Inner Join filteredactivitypointer fap on fap.regardingobjectid = fop.opportunityid
    Where fop.statecodename = 'offen'
    And fop.new_kampagneid = 
    
    Exept
    select fop.new_kampagneidname
    ,fop.name
    ,fop.createdon
    ,fop.owneridname
    ,fop.new_kampagneid
    ,fop.opportunityid
    , (datediff(day,fap.scheduledend,getutcdate())-@Zeitraum ) As Referenz
    
    From filteredopportunity fop
    
    Inner Join filteredactivitypointer fap on fap.regardingobjectid = fop.opportunityid
    where fap.activitytypecodename = 'termin'
    

    Ich gehe halt her und selektier erst mal alle VKCs und schmeiß dann die raus die eben einen Termin haben.

    Macht das Sinn oder ist dies eher nicht zu empfehlen? 

     

    VG

    Martin

    • Als Antwort markiert Michael Sulz Montag, 7. Februar 2011 08:21
    Freitag, 28. Januar 2011 08:38
  • Hallo Martin,

    genau so geht das CRM bei entsprechenden Reports vor. Es i zwar aus Performancegründen nicht die Ideale Lösung, aber die einfachste.


    Viele Grüße

    Michael Sulz
    MVP für Microsoft Dynamics CRM
    Blog
    Website
    • Als Antwort markiert Michael Sulz Montag, 7. Februar 2011 08:21
    Samstag, 29. Januar 2011 09:20

Alle Antworten

  • Hi Martin,

    was heißt Termin? Du meinste eine Aktivität (von einem gewissen Typ), oder geht es um ein Feld in der opportunity (welches)?

    Gruß
    Benni

    Mittwoch, 26. Januar 2011 15:15
  • Hallo Martin,

    meinst Du etwas wie das

    "SELECT * FROM FilteredOpportunity LEFT JOIN ActivityPointerBase ON FilteredOpportunity.opportunityid = ActivityPointerBase.RegardingObjectId WHERE ActivityPointerBase.RegardingObjectId IS NULL;"

    Das Statement frage alle Veraufschancen ab die die der aktuelle Nutzer lesen darf, an denen keine Aktivität geplant ist. Wenn Du nur "keine Termine" suchts müsstest Due die Where Bedingung etwas anpassen ;-)

    Grüße Thomas

    • Bearbeitet Thomas Bergmair Mittwoch, 26. Januar 2011 19:47 Rechtschreibung ;-)
    Mittwoch, 26. Januar 2011 19:43
  • Hi Benni, ja es geht um eine Aktivität vom Typ Termin. Und @ Thomas vielen Dank :) das geht genau in die Richtung. In der Art und Weise habe ich auch schone in paar Gedanken gefasst, wusste aber nicht ob man das tatsächlich so abfragen kann. Ich probiere es morgen gleich mal aus. Vielen Dank nochmals. VG Martin
    Mittwoch, 26. Januar 2011 21:40
  • Hallo Martin, hallo Thomas,

    noch kleiner Zusatz/Hinweis. Wenn du deine Abfrage auf "keine Termine oder keine offenen Termine" oder ähnliches weiter filtern willst, solltest du mit einer Subquery arbeiten.

    SELECT * FROM FilteredOpportunity LEFT JOIN (....) as t1 ON FilteredOpportunity.opportunityid = t1.RegardingObjectId WHERE t1.RegardingObjectId IS NULL

    Gruß,

    Nils

    Donnerstag, 27. Januar 2011 07:06
  • Könnte ich es auch folgendermaßen machen? 

    Hier an einem Beispiel was ich eben zusammengestellt habe:

    select fop.new_kampagneidname
    ,fop.name
    ,fop.createdon
    ,fop.owneridname
    ,fop.new_kampagneid
    ,fop.opportunityid
    , (datediff(day,fap.scheduledend,getutcdate())-@Zeitraum ) As Referenz
    
    From filteredopportunity fop
    
    Inner Join filteredactivitypointer fap on fap.regardingobjectid = fop.opportunityid
    Where fop.statecodename = 'offen'
    And fop.new_kampagneid = 
    
    Exept
    select fop.new_kampagneidname
    ,fop.name
    ,fop.createdon
    ,fop.owneridname
    ,fop.new_kampagneid
    ,fop.opportunityid
    , (datediff(day,fap.scheduledend,getutcdate())-@Zeitraum ) As Referenz
    
    From filteredopportunity fop
    
    Inner Join filteredactivitypointer fap on fap.regardingobjectid = fop.opportunityid
    where fap.activitytypecodename = 'termin'
    

    Ich gehe halt her und selektier erst mal alle VKCs und schmeiß dann die raus die eben einen Termin haben.

    Macht das Sinn oder ist dies eher nicht zu empfehlen? 

     

    VG

    Martin

    • Als Antwort markiert Michael Sulz Montag, 7. Februar 2011 08:21
    Freitag, 28. Januar 2011 08:38
  • Hallo Martin,

    genau so geht das CRM bei entsprechenden Reports vor. Es i zwar aus Performancegründen nicht die Ideale Lösung, aber die einfachste.


    Viele Grüße

    Michael Sulz
    MVP für Microsoft Dynamics CRM
    Blog
    Website
    • Als Antwort markiert Michael Sulz Montag, 7. Februar 2011 08:21
    Samstag, 29. Januar 2011 09:20