Situação/Requisito: | Devido a alteração na funcionalidade de exclusão de horários, na mensagem única padrão ScheduleWork, atualmente, agora quando ocorre o envio da exclusão de um horário, é enviado enviada a sequencia sequência de horários que está sendo excluída, diferentemente de como a rotina funcionava anteriormente, quando era enviado na exclusão, somente os horários que permaneciam. |
Solução/Implementação: | Permitir O programa foi alterado para permitir que, quando venha for enviada uma mensagem de exclusão de horários, identifique qual a sequencia que veio na seja identificada a sequência de horários da mensagem e exclua somente ela esta sequência na tabela ESCALA_HORARIOS. Para os casos em que venha apresentar a primeira sequenciasequência, deverá, além de excluir a tabela ESCALA_HORARIOS, continuar excluíndo excluir as tabelas ESCALA e TURNO_RHU. Exemplo 01) Na mensagem única é enviado a seguinte mensagem de exclusão, conforme abaixo. Como destacado abaixo na mensagem, é identificado que, a mensagem é de exclusão e a sequencia que está sendo excluída é a partir da 8 (as mensagem do Protheus são enviadas sempre com sequencias identificando semanas: semana 1, sequencia 1 a 7; semana 2, sequencia 8 a 14; semana 3, sequencia 15 a 21; etc). Dessa forma, deverá prever a exclusão da tabela ESCALA_HORARIOS, para a empresa e escala em questão, das sequencia 08 a 14: <TOTVSMessage> <MessageInformation version="1.000"> <UUID>26f55255-25c4-a64e-431d-55b229294b16</UUID> <Type>BusinessMessage</Type> <Transaction>SCHEDULEWORK</Transaction> <StandardVersion>1.000</StandardVersion> <SourceApplication>P118</SourceApplication> <CompanyId>YY</CompanyId> <BranchId>01</BranchId> <Product name="PROTHEUS" version="11"/> <GeneratedOn>2015-07-28T14:48:01</GeneratedOn> <DeliveryType>Sync</DeliveryType> </MessageInformation> <BusinessMessage> <BusinessEvent> <Entity>ScheduleWork</Entity> <Event>delete</Event> <Identification> <key name="Code">YY||305|02</key> </Identification> </BusinessEvent> <BusinessContent> <CompanyId>YY</CompanyId> <BranchId/> <WorkShiftCode>305</WorkShiftCode> <WorkShiftInternalId>YY||305</WorkShiftInternalId> <Description>TURNO TESTE LOGIX III</Description> <RegularHour>0</RegularHour> <RestHour>0</RestHour> <StartDateScheduleWork>2015-07-27</StartDateScheduleWork> <ListOfSchedule> <Schedule> <StartSequence>8</StartSequence> <EndSequence>8</EndSequence> <TypeOfDay>1</TypeOfDay> <ListOfScheduleHour> <ScheduleHour> <HourType>1</HourType> <StartHour>22.00</StartHour> <EndHour>5.00</EndHour> </ScheduleHour> <ScheduleHour> <HourType>2</HourType> <StartHour>1.00</StartHour> <EndHour>2.00</EndHour> </ScheduleHour> </ListOfScheduleHour> </Schedule> <Schedule> <StartSequence>9</StartSequence> <EndSequence>9</EndSequence> <TypeOfDay>1</TypeOfDay> <ListOfScheduleHour> <ScheduleHour> <HourType>1</HourType> <StartHour>22.00</StartHour> <EndHour>5.00</EndHour> </ScheduleHour> <ScheduleHour> <HourType>2</HourType> <StartHour>1.00</StartHour> <EndHour>2.00</EndHour> </ScheduleHour> </ListOfScheduleHour> </Schedule> <Schedule> <StartSequence>10</StartSequence> <EndSequence>10</EndSequence> <TypeOfDay>1</TypeOfDay> <ListOfScheduleHour> <ScheduleHour> <HourType>1</HourType> <StartHour>22.00</StartHour> <EndHour>5.00</EndHour> </ScheduleHour> <ScheduleHour> <HourType>2</HourType> <StartHour>1.00</StartHour> <EndHour>2.00</EndHour> </ScheduleHour> </ListOfScheduleHour> </Schedule> <Schedule> <StartSequence>11</StartSequence> <EndSequence>11</EndSequence> <TypeOfDay>1</TypeOfDay> <ListOfScheduleHour> <ScheduleHour> <HourType>1</HourType> <StartHour>22.00</StartHour> <EndHour>5.00</EndHour> </ScheduleHour> <ScheduleHour> <HourType>2</HourType> <StartHour>1.00</StartHour> <EndHour>2.00</EndHour> </ScheduleHour> </ListOfScheduleHour> </Schedule> <Schedule> <StartSequence>12</StartSequence> <EndSequence>12</EndSequence> <TypeOfDay>1</TypeOfDay> <ListOfScheduleHour> <ScheduleHour> <HourType>1</HourType> <StartHour>22.00</StartHour> <EndHour>5.00</EndHour> </ScheduleHour> <ScheduleHour> <HourType>2</HourType> <StartHour>1.00</StartHour> <EndHour>2.00</EndHour> </ScheduleHour> </ListOfScheduleHour> </Schedule> <Schedule> <StartSequence>13</StartSequence> <EndSequence>13</EndSequence> <TypeOfDay>2</TypeOfDay> <ListOfScheduleHour> <ScheduleHour> <HourType>1</HourType> <StartHour>0.00</StartHour> <EndHour>0.00</EndHour> </ScheduleHour> </ListOfScheduleHour> </Schedule> <Schedule> <StartSequence>14</StartSequence> <EndSequence>14</EndSequence> <TypeOfDay>3</TypeOfDay> <ListOfScheduleHour> <ScheduleHour> <HourType>1</HourType> <StartHour>0.00</StartHour> <EndHour>0.00</EndHour> </ScheduleHour> </ListOfScheduleHour> </Schedule> </ListOfSchedule> </BusinessContent> </BusinessMessage> </TOTVSMessage> 2) |