Comment obtenir la date de création d'un composant en utilisant les services de base


6

J'essaie d'obtenir la date de création d'un composant en utilisant les services de base.

J'ai essayé d'utiliser les informations de version, mais je ne vois que la date de modification.

J'ai utilisé ce qui suit. Dans la liste des versions, j'obtiens toutes les versions avec les informations de version qui ont le titre, la date de création et la date de révision, mais la date de création renvoie la date nulle et la date de révision comme date de modification. Veuillez suggérer.

VersionsFilterData versionsFilter = new VersionsFilterData(); 
versionsFilter.IncludeRevisorDescriptionColumn = true; 
IdentifiableObjectData[] versionList = client.GetList(compData.Id, versionsFilter); 
  0

Avez-vous vérifié la propriété 'VersionInfo' du composant? 23 déc.. 152015-12-23 11:50:10

3

Warner a - voici est la logique que vous faites avec aC# noyau service application client:

ComponentData c = (ComponentData)coreServiceClient.Read(componentId, readOptions); 
FullVersionInfo v = (FullVersionInfo) c.VersionInfo; 
Console.Write(v.CreationDate); 

Fondamentalement, vous pouvez utiliser la classe FullVersionInfo pour accéder aux informations d'un élément versionné. Le BasicVersionInfo s'applique à tous les objets - y compris les éléments non versionnés - et contient donc moins d'informations.

  0

Nuno.Merci, cela fonctionne parfaitement. 27 déc.. 152015-12-27 06:19:34


4

Ceci m'a pris un moment, seulement pour réaliser que nous rendons tous les deux plus difficile que nécessaire. Vous pouvez éventuellement obtenir ceci comme vous le faites. Mais, vous devez le faire (et vous avez besoin de traduire mon code PowerShell dans le vôtre ...)

 $filter = New-Object Tridion.ContentManager.CoreService.Client.VersionsFilterData$ filter.BaseColumns = 3 
 $versions =$ client.GetList( $itemId,$ filter) 
foreach ( $version in$ versions) 
{ 
   $vitem = Get-TridionItem$ version.Id 
  write-host $vitem.VersionInfo.CreationDate 
  write-host$ vitem.VersionInfo.Creator.Title 
} 

cependant, c'est le fameux « long chemin autour de la grange. » toutes les versions vont avoir le même créateur/date de création. Donc, ce que vous avez vraiment besoin de faire est d'obtenir le produit complet, puis utilisez ses informations de version:

 $vitem = Get-TridionItem$ itemId 
write-host $vitem.VersionInfo.CreationDate 
write-host$ vitem.VersionInfo.Creator.Title