IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SharePoint .NET Discussion :

Champ Date en REST


Sujet :

SharePoint .NET

  1. #1
    Membre habitué Avatar de Aquellito
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    337
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 337
    Points : 150
    Points
    150
    Par défaut Champ Date en REST
    Bonjour les SharePointeurs

    Je souhaite faire une requète REST sur une liste comportant des champs de type Date.
    Le problème est que ça me retourne de mauvaises dates car il m'enlève à chauqe fois 1 ou 2 heures et donc passe à la date de la veille.

    Ci-dessous la réponse XML (on peut voir mes deux champs dates "debut" et "fin" avec pour les deux la date de la veille que ce qui s'affiche dans SP. On voit bien dans le champ "debut" qu'il m'a enlevé 1 heure, et dans le champ "fin", il m'a enlevé 2 heures.... je n'explique pas non plus cette différence de comportement entre ces deux champs totalement identiques... Je mes aussi la capture d'écran de l'UI SharePoint.

    Merci pour votre aide.

    Nom : captureSharePoint.png
Affichages : 100
Taille : 1,4 Ko

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?xml version="1.0" encoding="utf-8"?>
    <feed xml:base="https://myDomain/sites/mySiteColl/_api/" xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml">
      <id>b8ce716b-64e5-4d97-b281-e02b9fe10b14</id>
      <title />
      <updated>2017-04-04T14:22:49Z</updated>
      <entry m:etag="&quot;2&quot;">
        <id>fdeb6f90-9dcb-4f1a-8d84-ae9d50469fa7</id>
        <category term="SP.Data.PeriodeReportingListItem" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
        <link rel="edit" href="Web/Lists(guid'50cb6b05-c37a-4f89-9781-2db6ce073440')/Items(3)" />
        <title />
        <updated>2017-04-04T14:22:49Z</updated>
        <author>
          <name />
        </author>
        <content type="application/xml">
          <m:properties>
            <d:Id m:type="Edm.Int32">3</d:Id>
            <d:Title>période 2017</d:Title>
            <d:debut m:type="Edm.DateTime">2016-12-31T23:00:00Z</d:debut>
            <d:fin m:type="Edm.DateTime">2017-04-28T22:00:00Z</d:fin>
            <d:ID m:type="Edm.Int32">3</d:ID>
          </m:properties>
        </content>
      </entry>
    </feed>

  2. #2
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Salut,

    La différence ? La Timezone. Ta date début est en heure d'hiver (+1) et celle de fin en heure d'été (+2). Les dates dans le XML sont conformes à l'ISO 8601, le Z à la fin signifie qu'il s'agit d'heure "au méridien zéro" (ou horaire de Greenwich, ou encore heure anglaise). De ton côté tu dois bosser avec la Timezone "Paris" (+1/+2 selon hiver/été). Les fonctionnalités des dates du .NET gèrent ça toutes seules.
    Plus je connais de langages, plus j'aime le C.

  3. #3
    Membre habitué Avatar de Aquellito
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    337
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 337
    Points : 150
    Points
    150
    Par défaut
    Salut,

    Merci pour ces précisions.

    Cependant, pour vérifier que je pers bien 2 heures, j'ai modifié les champs dates et là ça me retourne la bonne date/heure....
    C'est le côté aléatoire qui m'étonne, la semaine dernière, quand j'ai recetté mon app, tout fonctionnais, et hier quand on livre au client, il tombe sur ce bug de timezone (j'ai bien eu l'air c...)

    Vendredi : ça marche
    Mardi : ça marche plus
    Mercredi : ça re-marche....

    Ta date début est en heure d'hiver (+1) et celle de fin en heure d'été (+2)
    Dans l'exemple ci-dessus, l'élément a été mis à jours hier, et pourtant le champ début est à l'heure d'hiver.... c'est la différence de comportement entre les deux champs qui m'étonne aussi.

    Les fonctionnalités des dates du .NET gèrent ça toutes seules
    Si t'as une méthode qui déchire, ça méintéresse

    Merci

    ps : la réponse XML après avoir mis-à-jours l'élément dans SP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
      <updated>2017-04-05T08:25:58Z</updated>
      <entry m:etag="&quot;4&quot;">
        <id>46dd986a-2b47-446b-ae11-1bc52c1c9302</id>
        <category term="SP.Data.PeriodeReportingListItem" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
        <link rel="edit" href="Web/Lists(guid'50cb6b05-c37a-4f89-9781-2db6ce073440')/Items(3)" />
        <title />
        <updated>2017-04-05T08:25:58Z</updated>
        <author>
          <name />
        </author>
        <content type="application/xml">
          <m:properties>
            <d:Id m:type="Edm.Int32">3</d:Id>
            <d:Title>période 2017</d:Title>
            <d:debut m:type="Edm.DateTime">2017-01-01T00:00:00Z</d:debut>
            <d:fin m:type="Edm.DateTime">2017-04-30T00:00:00Z</d:fin>
            <d:ID m:type="Edm.Int32">3</d:ID>
          </m:properties>
        </content>

Discussions similaires

  1. formater un champ date dans un select
    Par sbeu dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 24/04/2006, 16h44
  2. Champ Date à '01/01/0001' -> Pb conversion de variant !!!
    Par AnnSo dans le forum Bases de données
    Réponses: 6
    Dernier message: 04/06/2004, 16h54
  3. récuperer année d'un champ date
    Par tomm dans le forum Bases de données
    Réponses: 11
    Dernier message: 12/05/2004, 16h24
  4. [CR] Problème de sélection sur un champ date
    Par noluc dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 21/11/2003, 16h56
  5. procedure stockée champ date
    Par tripper.dim dans le forum SQL
    Réponses: 5
    Dernier message: 25/04/2003, 09h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo