[Webdav + outlook] afspraken van 1 maand

Pagina: 1
Acties:

  • angl2k
  • Registratie: Maart 2001
  • Laatst online: 07-01 19:49
yo, ik ben bezig met een php script waarmee ik mijn outlook calendar items kan uitlezen via webdav en het gaat al aardig.

ik kan nu afspraken ophalen vanaf een bepaald tijdstip (bv. deze maand). echter wanneer ik afspraken tussen 2 data wil opvragen lukt het niet.

de xml-tag heet <g:sql> dus ik mag aannemen dat de inhoud gewoon standaard SQL is :?

dit werkt goed
XML:
1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0"?>
<g:searchrequest xmlns:g="DAV:">
        <g:sql> Select "urn:schemas:calendar:location", "urn:schemas:httpmail:subject",
                "urn:schemas:calendar:dtstart", "urn:schemas:calendar:dtend"
                FROM Scope('SHALLOW TRAVERSAL OF "https://[cut]/exchange/[cut]/calendar/"')
                WHERE NOT "urn:schemas:calendar:instancetype" = 1
                AND "DAV:contentclass" = 'urn:content-classes:appointment'
                AND "urn:schemas:calendar:dtstart" > '2006/10/01' 
                ORDER BY "urn:schemas:calendar:dtstart" ASC
         </g:sql>
</g:searchrequest>


dit werkt dus niet
XML:
1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0"?>
<g:searchrequest xmlns:g="DAV:">
        <g:sql> Select "urn:schemas:calendar:location", "urn:schemas:httpmail:subject",
                "urn:schemas:calendar:dtstart", "urn:schemas:calendar:dtend"
                FROM Scope('SHALLOW TRAVERSAL OF "https://[cut]/exchange/[cut]/calendar/"')
                WHERE NOT "urn:schemas:calendar:instancetype" = 1
                AND "DAV:contentclass" = 'urn:content-classes:appointment'
                AND "urn:schemas:calendar:dtstart" > '2006/10/01' 
                AND "urn:schemas:calendar:dtend" < '2006/11/01' 
                ORDER BY "urn:schemas:calendar:dtstart" ASC
         </g:sql>
</g:searchrequest>


ben ik nou gek? ik heb gewoon een AND erbij gevoegd, zou toch moeten werken :?
ik haal het veld "urn:schemas:calendar:dtend" op dus daar ligt t imo niet aan :(

linkje naar de documentatie die ik bekeken heb: msdn

Verwijderd

Wat als je het zo doet:

code:
1
2
3
4
5
6
7
8
 <g:sql> Select "urn:schemas:calendar:location", "urn:schemas:httpmail:subject",
                "urn:schemas:calendar:dtstart", "urn:schemas:calendar:dtend"
                FROM Scope('SHALLOW TRAVERSAL OF "https://[cut]/exchange/[cut]/calendar/"')
                WHERE NOT "urn:schemas:calendar:instancetype" = 1
                AND "DAV:contentclass" = 'urn:content-classes:appointment'
                AND "urn:schemas:calendar:dtend" < '2006/11/01' 
                ORDER BY "urn:schemas:calendar:dtstart" ASC
         </g:sql>

Krijg je ook een foutmelding?

  • angl2k
  • Registratie: Maart 2001
  • Laatst online: 07-01 19:49
woot, ik heb het gevonden

die '<' werd door de xml parser gezien als token en daarom ging ie over zn nek. logisch eigenlijk.. dat ik daar niet aan gedacht hebt.. komt ook omdat ik die inhoud gekopieerd had van de MSDN site :(

even voor de referentie de werkende query _O_

XML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0"?>
<g:searchrequest xmlns:g="DAV:">
        <g:sql> 

        Select "urn:schemas:calendar:location", "urn:schemas:httpmail:subject",
                "urn:schemas:calendar:dtstart", "urn:schemas:calendar:dtend"
                FROM Scope('SHALLOW TRAVERSAL OF "[url]"')
                WHERE NOT "urn:schemas:calendar:instancetype" = 1
                AND "DAV:contentclass" = 'urn:content-classes:appointment'
                AND "urn:schemas:calendar:dtstart" &gt; '2006-10-01 00:00:00'
                AND "urn:schemas:calendar:dtend" &lt; '2006-11-01 00:00:00'
                ORDER BY "urn:schemas:calendar:dtstart" ASC

         </g:sql>
</g:searchrequest>


ik heb dus even de '<' en '>' omgezet naar de juiste xml-geldige tekens

[ Voor 49% gewijzigd door angl2k op 16-09-2006 21:54 ]