pdm_ldap_import fails with parse error when pdm_ldap_test works
search cancel

pdm_ldap_import fails with parse error when pdm_ldap_test works

book

Article ID: 135525

calendar_today

Updated On:

Products

CA Service Desk Manager

Issue/Introduction

When I use the following command it returns data

pdm_ldap_test -f "(objectclass=user)(division=xxxx)"


when I try to use the following command I get an error:

pdm_ldap_import -l "(objectclass=user)(division=xxxx)":


pdm_ldap_import: Method got_record in Ldap_Catcher failed (AHD03053:Bad where clause: Parse error at : "ldap_domain = '' AND (objectclass=user)(divisi

on=xxxx)" (Attr not found or not atomic))

Environment

Release :

Component : SERVICE DESK MANAGER

Cause

This is because pdm_ldap_test may be a little more forgiving on the syntax than pdm_ldap_import.

Resolution

First I will note that the commands here are not using -n because they were run for a single domain. You may use -n if you have multiple domains.


Try removing the parenthesis and make sure the -l (the where clause) is not ambiguous. 

Start from a much more simple example, such as the ldap_db that you have defined in your GUI domain settings.

For example, in this case they tested the following instead:


pdm_ldap_import -l "userid = '111111'"


This worked. Then they tried:


pdm_ldap_import -l "division = 'xxxx'"


This worked. Then they tried:


pdm_ldap_import -l "division = 'xxxx' AND memberOf = 'CN=xxxxxx,OU=User Management,OU=xxxxxxxx,DC=xxxxxxxx,DC=local'"


This worked and gave them all the records they need.

So even if the "test" is working you may need to simplify your where clause and get this working without any parse errors.