Boa tarde, preciso descobrir a quantidade de clientes atendidos num determinado período informado entre "c-emi-ini" e "c-emi-fim" para armazenar nas nas variáveis abaixo "c-f01, c-f03, c-f06, c-f09 e c-f12" a quantidade de clientes atendidos, sendo que "c-f01" equivale à qtde no mês atual (conforme mês no c-emi-ini), c-f03 aos últimos 3 meses, c-f06 aos ultimos 6 meses, c-f09 aos últimos 9 meses e c-f12 aos ultimos 12 meses. Lá em baixo estou informando de forma manual se mês for 4... e etc.. então como fazer ele ler o periodo inicial e final, pegar o mês do periodo inicial e calcular ele, depois os 3, 6, 9 e 12 meses anteriores? Obs. trabalhamos com várias marcas e abaixo está somente uma de exemplo. Obrigado!!!!! Código: OUTPUT TO "c:\temp\atendidos.txt". DEF VAR c-marca AS CHAR FORMAT "X(10)". DEF VAR c-f01 AS i INIT 0. DEF VAR c-f03 AS i INIT 0. DEF VAR c-f06 AS i INIT 0. DEF VAR c-f09 AS i INIT 0. DEF VAR c-f12 AS i INIT 0. DEF WORKFILE tempcliate FIELD marca AS CHAR FORMAT "X(10)" FIELD nome-matriz LIKE emitente.nome-matriz FIELD atividade LIKE emitente.atividade FIELD mes AS LOGICAL EXTENT 12. FOR EACH nota-fiscal NO-LOCK USE-INDEX ch-distancia where nota-fiscal.dt-emis-nota >= c-emi-ini AND nota-fiscal.dt-emis-nota <= c-emi-fim AND nota-fiscal.emite-duplic = YES AND nota-fiscal.dt-cancela = ?: FIND emitente NO-LOCK WHERE emitente.cod-emitente = nota-fiscal.cod-emitente NO-ERROR. FOR EACH it-nota-fisc OF nota-fiscal NO-LOCK: ASSIGN c-marca = ''. FIND ITEM NO-LOCK WHERE ITEM.it-codigo = it-nota-fisc.it-codigo NO-ERROR. IF ITEM.fm-cod-com BEGINS 'A' THEN ASSIGN c-marca = 'HI'. IF ITEM.fm-cod-com BEGINS 'C' THEN ASSIGN c-marca = 'FR'. IF c-marca <> '' THEN DO: IF (emitente.cod-gr-cli = 10 OR emitente.cod-gr-cli = 11 OR emitente.cod-gr-cli = 12 OR emitente.cod-gr-cli = 30 OR emitente.cod-gr-cli = 31) AND emitente.natureza <> 1 THEN DO: FIND FIRST tempcliate WHERE tempcliate.nome-matriz = emitente.nome-matriz AND tempcliate.marca = c-marca NO-ERROR. IF NOT AVAIL tempcliate THEN DO: CREATE tempcliate. ASSIGN tempcliate.nome-matriz = emitente.nome-matriz tempcliate.marca = c-marca tempcliate.atividade = emitente.atividade. END. ASSIGN tempcliate.mes[MONTH(nota-fiscal.dt-emis-nota)] = TRUE. FIND FIRST tempcliate WHERE tempcliate.nome-matriz = emitente.nome-matriz AND tempcliate.marca = 'NH' NO-ERROR. IF NOT AVAIL tempcliate THEN DO: CREATE tempcliate. ASSIGN tempcliate.nome-matriz = emitente.nome-matriz tempcliate.marca = 'NH' tempcliate.atividade = emitente.atividade. END. ASSIGN tempcliate.mes[MONTH(nota-fiscal.dt-emis-nota)] = TRUE. END. END. END. END. FOR EACH tempcliate WHERE tempcliate.marca = 'FRAHM': IF tempcliate.mes[04] = TRUE THEN ASSIGN c-f01 = c-f01 + 1. IF tempcliate.mes[02] = TRUE OR tempcliate.mes[03] = TRUE OR tempcliate.mes[04] = TRUE THEN ASSIGN c-f03 = c-f03 + 1. IF tempcliate.mes[11] = TRUE OR tempcliate.mes[12] = TRUE OR tempcliate.mes[01] = TRUE OR tempcliate.mes[02] = TRUE OR tempcliate.mes[03] = TRUE OR tempcliate.mes[04] = TRUE THEN ASSIGN c-f06 = c-f06 + 1. IF tempcliate.mes[08] = TRUE OR tempcliate.mes[09] = TRUE OR tempcliate.mes[10] = TRUE OR tempcliate.mes[11] = TRUE OR tempcliate.mes[12] = TRUE OR tempcliate.mes[01] = TRUE OR tempcliate.mes[02] = TRUE OR tempcliate.mes[03] = TRUE OR tempcliate.mes[04] = TRUE THEN ASSIGN c-f09 = c-f09 + 1. IF tempcliate.mes[05] = TRUE OR tempcliate.mes[06] = TRUE OR tempcliate.mes[07] = TRUE OR tempcliate.mes[08] = TRUE OR tempcliate.mes[09] = TRUE OR tempcliate.mes[10] = TRUE OR tempcliate.mes[11] = TRUE OR tempcliate.mes[12] = TRUE OR tempcliate.mes[01] = TRUE OR tempcliate.mes[02] = TRUE OR tempcliate.mes[03] = TRUE OR tempcliate.mes[04] = TRUE THEN ASSIGN c-f12 = c-f12 + 1. END. PUT MONTH(c-emi-ini) AT 04 FORMAT "99" YEAR(c-emi-ini) AT 06 FORMAT "9999" c-f01 FORMAT "999999" c-f03 FORMAT "999999" c-f06 FORMAT "999999" c-f09 FORMAT "999999" c-f12 FORMAT "999999". OUTPUT CLOSE.