Árvore de páginas

Retorna a data inicial do período da consulta conforme a data final e o tipo do período.

Parâmetros

NomeTipoDescrição
cTipoCaracterCódigo com o tipo do período. Valores aceitos: D (Diário), S (Semanal), Q (Quinzenal), M (Mensal), X (Personalizado).
dDataFimDataData final do período de referência.
cDiasCaracterQuantidade de dias que será usado quando o período for do tipo X (Personalizado).


Retorno

TipoDescrição
Data

Data inicial do período, de acordo com o cTipo:

  • D (Diário): a mesma data informada em dDataFim;
  • S (Semanal): a data referente ao início da semana da data informada em dDataFim, considerando que as semanas iniciam no domingo;
  • Q (Quinzenal): a data referente ao início da quinzena da data informada em dDataFim, considerando que as quinzenas iniciam nos dias 01 e 16, respectivamente;
  • M (Mensal): o primeiro dia do mês da data informada em dDataFim;
  • X (Personalizado): partindo da data informada em dDataFim, será considerado o número de dias anteriores informados em cDias.


Exemplo de Uso

User Function dtIniPer()
    Local lRet     := .T.
    Local dDataFin := Nil

    Set(_SET_DATEFORMAT, 'dd/mm/yyyy')
    dDataFin := cToD("31/10/2023")

    ConOut(REPLICATE("-",70))
    ConOut("Tipo D: " + dToC(PCPMonitorUtils():RetornaPeriodoInicial("D",dDataFin))) //Tipo D: 31/10/2023
    ConOut("Tipo S: " + dToC(PCPMonitorUtils():RetornaPeriodoInicial("S",dDataFin))) //Tipo S: 29/10/2023
    ConOut("Tipo Q: " + dToC(PCPMonitorUtils():RetornaPeriodoInicial("Q",dDataFin))) //Tipo Q: 16/10/2023
    ConOut("Tipo M: " + dToC(PCPMonitorUtils():RetornaPeriodoInicial("M",dDataFin))) //Tipo M: 01/10/2023
    ConOut("Tipo X: " + dToC(PCPMonitorUtils():RetornaPeriodoInicial("X",dDataFin,"5"))) //Tipo X: 26/10/2023
    ConOut(REPLICATE("-",70))

Return lRet
  • Sem rótulos