Problem getting latest version metadata filter working

I am trying to use the metadata filter below with find-ishDocumentObj in PowerShell and it returns zero docs. If I block the last line that defines the version as 'latest' it works but returns multiple ishmodules. Can someone tell me what I am doing wrong? Does 'latest' not work with a metadata filter? 

 

$metadataFilter =

Set-IshMetadataFilterField -IshSession $ishSession -Name "DOC-LANGUAGE" -Level "Lng" -FilterOperator "equal" -Value "en-US" |

Set-IshMetadataFilterField -IshSession $ishSession -Name "CREATED-ON" -Level "version" -FilterOperator "greaterthan" -Value "14/6/2016 00:00:00" |

Set-IshMetadataFilterField -IshSession $ishSession -Name "CREATED-ON" -Level "version" -FilterOperator "lessthan" -Value "14/12/2017 00:00:00" |

Set-IshMetadataFilterField -IshSession $ishSession -Name "VERSION" -Level "version" -FilterOperator "equal" -Value "latest"

 

 

 

 

Parents
  • Dear Rick,

    I think latest for the MetadataFilterField definitions should be changed toward latestafterfilter and the -FilterOperator which is optional should be removed from the Set-IshMetadataFilterField call.


    So I think the statement should be

    Set-IshMetadataFilterField -IshSession $ishSession -Name "VERSION" -Level "version" -Value "latestafterfilter"

    More information about the behavior of the version numbers can be found in the documentation at the following page:
    docs.sdl.com/.../GUID-DD81BBD6-19DB-45BE-B86B-0248C4E2FA68
    (Understanding how version numbers behave)

    Kind Regards,

    Raf
  • Thank Raf, I made the change but it still returns zero. With the code below, the count returned is 124 if I remove the Version filter field. With the version filter field, it returns zero. If it returns the latest, does that mean that the topics being returned are not the latest, so it returns zero?

    $metadataFilter = Set-IshMetadataFilterField -IshSession $ishSession -Name "DOC-LANGUAGE" -Level "Lng" -FilterOperator "equal" -Value "en-US"  |

    Set-IshMetadataFilterField -IshSession $ishSession -Name "CREATED-ON" -Level "version" -FilterOperator "greaterthan" -Value "14/6/2016 00:00:00" |

    Set-IshMetadataFilterField -IshSession $ishSession -Name "CREATED-ON" -Level "version" -FilterOperator "lessthan" -Value "30/6/2016 00:00:00" |

    Set-IshMetadataFilterField -IshSession $ishSession -Name "VERSION" -Level "version" -Value "latestafterfilter"

    $requestedMetadata = Set-IshRequestedMetadataField -IshSession $ishSession -Name 'FTITLE' -Level "logical" |

    Set-IshRequestedMetadataField -IshSession $ishSession -Name 'CREATED-ON' -Level "Version" |

    Set-IshRequestedMetadataField -IshSession $ishSession -Name 'FAUTHOR' -Level "Lng" |

    Set-IshRequestedMetadataField -IshSession $ishSession -Name 'VERSION' -Level "Version"

    $topicsFound = Find-IshDocumentObj -IshSession $ishSession -IshTypeFilter ishModule -MetadataFilter $metadataFilter -RequestedMetadata $requestedMetadata

    $topicsFound.Count

Reply
  • Thank Raf, I made the change but it still returns zero. With the code below, the count returned is 124 if I remove the Version filter field. With the version filter field, it returns zero. If it returns the latest, does that mean that the topics being returned are not the latest, so it returns zero?

    $metadataFilter = Set-IshMetadataFilterField -IshSession $ishSession -Name "DOC-LANGUAGE" -Level "Lng" -FilterOperator "equal" -Value "en-US"  |

    Set-IshMetadataFilterField -IshSession $ishSession -Name "CREATED-ON" -Level "version" -FilterOperator "greaterthan" -Value "14/6/2016 00:00:00" |

    Set-IshMetadataFilterField -IshSession $ishSession -Name "CREATED-ON" -Level "version" -FilterOperator "lessthan" -Value "30/6/2016 00:00:00" |

    Set-IshMetadataFilterField -IshSession $ishSession -Name "VERSION" -Level "version" -Value "latestafterfilter"

    $requestedMetadata = Set-IshRequestedMetadataField -IshSession $ishSession -Name 'FTITLE' -Level "logical" |

    Set-IshRequestedMetadataField -IshSession $ishSession -Name 'CREATED-ON' -Level "Version" |

    Set-IshRequestedMetadataField -IshSession $ishSession -Name 'FAUTHOR' -Level "Lng" |

    Set-IshRequestedMetadataField -IshSession $ishSession -Name 'VERSION' -Level "Version"

    $topicsFound = Find-IshDocumentObj -IshSession $ishSession -IshTypeFilter ishModule -MetadataFilter $metadataFilter -RequestedMetadata $requestedMetadata

    $topicsFound.Count

Children