<OrgLocationsImport> завершается с ошибкой «Местоположение / задание с именем и путем уже существует» - PullRequest
0 голосов
/ 30 мая 2018

Я хочу обновить работу на организационной карте с помощью XML-API Kronos Workforce Central v8.1.

В соответствии с Workforce Timekeeping v8.1 Руководства разработчика по набору инструментов , отправка запроса с <OrgLocationsImport> и Action="Update" должна обновить задание, если оно уже существует.Однако, хотя я могу импортировать новые задания без проблем, запрос не будет выполнен, если я попытаюсь обновить существующее задание.

Сообщение об ошибке:

WFP-00335 Местоположение / задание симя TEST и путь «ROOT / BU / DIV / SL / DEPT / TEST» уже существуют с 6/02/2010 по 12/31/2999.

Запрос XML:

<Kronos_WFC version="1.0">
    <Request Action="Update">
        <OrgLocationsImport ChangeDate="05/30/2018">
            <OrgLocations>
                <OrgLocation
                  ParentLocationPathName="ROOT/BU/DIV/SL/DEPT"
                  LocationName="TEST"
                  LocationType="Job"
                  Description="Test Job">
                </OrgLocation>
            </OrgLocations>
        </OrgLocationsImport>
    </Request>
</Kronos_WFC>

Ответ XML:

<Kronos_WFC TimeStamp="5/30/2018 10:18AM GMT-04:00" version="1.0" WFCVersion="8.1.1.569">
    <Response Status="Failure" Action="Update">
        <Error Message="WFP-00335 A location/job with the name TEST and path
            &quot;ROOT/BU/DIV/SL/DEPT/TEST&quot; already exists from 6/02/2010
            to 12/31/2999." ErrorCode="106" AtIndex="0">
            <ErrorData>"PATH=ROOT/BU/DIV/SL/DEPT/TEST""EFFECTIVE_DATE=6/02/2010"
                "EXPIRATION_DATE=12/31/2999""NAME=TEST"
            </ErrorData>
        </Error>
    </Response>
</Kronos_WFC>

Почему мой запрос на обновление <OrgLocationsImport> не выполняется, если местоположение уже существует?

1 Ответ

0 голосов
/ 30 мая 2018

Вам необходимо указать LocationPathName при обновлении <OrgLocation>.

<Kronos_WFC version="1.0">
    <Request Action="Update">
        <OrgLocationsImport ChangeDate="05/30/2018">
            <OrgLocations>
                <OrgLocation
                  ParentLocationPathName="ROOT/BU/DIV/SL/DEPT"
                  LocationPathName="ROOT/BU/DIV/SL/DEPT/TEST"
                  LocationName="TEST"
                  LocationType="Job"
                  Description="Test Job">
                </OrgLocation>
            </OrgLocations>
        </OrgLocationsImport>
    </Request>
</Kronos_WFC>

Согласно документации WFC, <OrgLocation> всегда должно включать либо LocationPathName, либо LocationNum,Исключение их следует рассматривать как неопределенное поведение.

Интересно, что когда эти атрибуты исключаются из запроса <OrgLocationsImport> в WFC v6.3 и v8.1, этот запрос, по-видимому, действует как временное действие AddOnly.Однако это поведение может измениться в будущих версиях Workforce Central.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...