XSLT Получить значения, основанные на максимуме даты при использовании группового - PullRequest
0 голосов
/ 17 мая 2019

Мне нужно получить дату начала периода и дату окончания периода, основываясь на более высокой дате расчета даты окончания периода расчета.Для каждого работника может быть 2 записи, необходимо сгруппировать данные о работнике и найти соответствующее (одно) значение даты начала периода и даты окончания периода на основе большей даты даты окончания периода расчета заработной платы.

У меня естьпопытался использовать родительские и узловые функции.Я пробовал xsl: sort (но не работал с датами)

Пример XML:

<?xml version='1.0' encoding='UTF-8'?>
<wd:Report_Data xmlns:wd="test">
    <wd:Report_Entry>
        <wd:Worker_group>
            <wd:Employee_ID>1234567</wd:Employee_ID>
        </wd:Worker_group>
        <wd:Payroll_Result_Period_End_Date>2019-01-06-08:00</wd:Payroll_Result_Period_End_Date>
        <wd:Period_group>
            <wd:Period_Start_Date>2018-12-31-08:00</wd:Period_Start_Date>
            <wd:Period_End_Date>2019-01-13-08:00</wd:Period_End_Date>
        </wd:Period_group>
    </wd:Report_Entry>
    <wd:Report_Entry>
        <wd:Worker_group>
            <wd:Employee_ID>1234567</wd:Employee_ID>
        </wd:Worker_group>
        <wd:Payroll_Result_Period_End_Date>2019-01-15-08:00</wd:Payroll_Result_Period_End_Date>
        <wd:Period_group>
            <wd:Period_Start_Date>2019-01-02-08:00</wd:Period_Start_Date>
            <wd:Period_End_Date>2019-01-15-08:00</wd:Period_End_Date>
        </wd:Period_group>
    </wd:Report_Entry>
</wd:Report_Data>

Ожидаемый результат:

<?xml version='1.0' encoding='UTF-8'?>
<Worker>
    <Employee_ID>1234567</Employee_ID>
    <Period_Start_Date>2019-01-02-08:00</Period_Start_Date>
    <Period_End_Date>2019-01-15-08:00</Period_End_Date>
</Worker>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...