Luiz Fernando Posted November 14, 2022 Report Share Posted November 14, 2022 Pessoal estou precisando fazer uma rotina, aonde me retorna o numero de sexta-feira que tem naquele mês específico, e seus dias se alguém tiver alguma rotina para compartilhar obg Luiz Fernando Quote Link to comment Share on other sites More sharing options...
Ladinilson Posted November 14, 2022 Report Share Posted November 14, 2022 1 hora atrás, Luiz Fernando disse: Pessoal estou precisando fazer uma rotina, aonde me retorna o numero de sexta-feira que tem naquele mês específico, e seus dias se alguém tiver alguma rotina para compartilhar obg Luiz Fernando FUNCTION pSema(Dia,Tipo,Acento) **--------------------------------------** ** Retornar o dia da semana * ** Sintaxe : pSema(arg1,arg,arg3) ** Arg1 = Data/Variavel ** Arg2 = 1=dia simples, 0=dia completo (segunda.segunda-feira) ** Arg3 = 1 remover acentos ** Exemplo : @ 10,10 SAY pSema(date(),1,1) ** Retorno : Terca-Feira **--------------------------------------** a=DOW(dia) dia="" DO CASE CASE a = 1 dia="Domingo" CASE a = 2 dia=IF(Tipo==1,"Segunda","Segunda-Feira") CASE a = 3 dia=IF(Tipo==1,"Terça","Terça-Feira") CASE a = 4 dia=IF(Tipo==1,"Quarta","Quarta-Feira") CASE a = 5 dia=IF(Tipo==1,"Quinta","Quinta-Feira") CASE a = 6 dia=IF(Tipo==1,"Sexta","Sexta-Feira") CASE a = 7 dia="Sabado" ENDCASE IF(Acento==1) dia:=TiraAcento(dia) ENDIF RETURN(dia) Tente por aqui, faça um loop de 1 a 31 para ver as sextas do mês. Abraços Luiz Fernando 1 Quote Link to comment Share on other sites More sharing options...
kapiaba Posted November 14, 2022 Report Share Posted November 14, 2022 Dear friend, look this: // http://forums.fivetechsupport.com/viewtopic.php?f=6&t=38029 DayOfWeek := STRTRAN( cdow( Date() ), "á", "a" DayOfWeek := STRTRAN( OemToAnsi( cdow(fe ) ), "á", "a" ) //** "Days in month..:", DaysInMonth( dDate ) //** "Day of year....:", DoY( dDate ) //** "Begin of month.:", BoM( dDate ) //** "End of month...:", EoM( dDate ) //** "Week of month..:", WoM( dDate ) //** "Week of year...:", WoY( dDate ) //** "Begin of year..:", BoY( dDate ) //** "End of year....:", EoY( dDate ) FUNCTION Fecha( dFecha ) LOCAL cLeyenda, aDias, aMeses DEFAULT dFecha := Date() aDias := { "Domingo, ", "Lunes, ", "Martes, ", "Miercoles, ", "Jueves, ", "Viernes, ", "Sabado, " } aMeses := { "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre" } cLeyenda := aDias[ DoW( dFecha ) ] + Str( Day( dFecha ), 2 ) + " de " + aMeses[ Month( dFecha ) ] + ; " de " + Str( Year( dFecha ), 4 ) RETURN cLeyenda FUNCTION FechaLet() LOCAL cMes := { 'Enero ', 'Febrero ', 'Marzo ', 'Abril ', ; 'Mayo ', 'Junio ', 'Julio ', 'Agosto ', ; 'Septiembre', 'Octubre ', 'Noviembre ', 'Diciembre ' } LOCAL cDia := { 'Domingo', 'Lunes', 'Martes', 'Miércoles', ; 'Jueves', 'Viernes', 'Sábado' } LOCAL FechaLet := cDia[ DoW(Date( ) ) ] + ', ' + ; Str( Day( Date( ) ) ) + ' de ' + ; AllTrim( cMes[ Month(Date( ) ) ] ) + ; IF( Year( Date() ) > 2000, ' del ', ' de ' ) + ; Str( Year( Date( ) ) ) RETURN FechaLet FUNCTION Dias( dDate ) RETURN cDow( dDate ) + ", " + str( day( dDate ) ) + " de " + cMonth( dDate ) + " del " + str( year( dDate ) ) Regards, saludos. Luiz Fernando 1 Quote Link to comment Share on other sites More sharing options...
Luiz Fernando Posted November 14, 2022 Author Report Share Posted November 14, 2022 Ladinilson vlw obg pela dica, usei um loop aqui de 1 a 31 e deu certo. function DiaSemana( dData, nLen ) local aDias:={ 'Domingo','Segunda','Terça ','Quarta ','Quinta ','Sexta ', 'Sábado ' } local cDiaSem DEFAULT nLen:=7 cDiaSem:=substr( aDias[dow(dData)], 1, nLen ) return cDiaSem Kapiaba como deu certo com a dica do Ladinilson, acabei nem testando a sua, que com certeza tb iria dar certo, obg pelo retorno Abs Quote Link to comment Share on other sites More sharing options...
Ladinilson Posted November 14, 2022 Report Share Posted November 14, 2022 5 minutos atrás, Luiz Fernando disse: Ladinilson vlw obg pela dica, usei um loop aqui de 1 a 31 e deu certo. function DiaSemana( dData, nLen ) local aDias:={ 'Domingo','Segunda','Terça ','Quarta ','Quinta ','Sexta ', 'Sábado ' } local cDiaSem DEFAULT nLen:=7 cDiaSem:=substr( aDias[dow(dData)], 1, nLen ) return cDiaSem Kapiaba como deu certo com a dica do Ladinilson, acabei nem testando a sua, que com certeza tb iria dar certo, obg pelo retorno Abs Não fale isso que ele vai ficar chateado, mesmo porque o time dele perdeu ontem em casa kkkkk Quote Link to comment Share on other sites More sharing options...
kapiaba Posted November 14, 2022 Report Share Posted November 14, 2022 kkkkkkkkkkkkkkkkkkkkkkkkk, o importante é que você não ficou sem resposta e o Ladinilson "virou" colaborador. abraços. Quote Link to comment Share on other sites More sharing options...
alex2002 Posted November 14, 2022 Report Share Posted November 14, 2022 1 hora atrás, Ladinilson disse: Não fale isso que ele vai ficar chateado, mesmo porque o time dele perdeu ontem em casa kkkkk E perdeu para o meu Galão rsrsrsrsrsrs Quote Link to comment Share on other sites More sharing options...
kapiaba Posted November 14, 2022 Report Share Posted November 14, 2022 22 minutos atrás, alex2002 disse: E perdeu para o meu Galão rsrsrsrsrsrs KKKKKKKKKKKKKK, Foi mesmo. kkkkkkkkk Abraços meu baixinho querido. rochinha 1 Quote Link to comment Share on other sites More sharing options...
rochinha Posted November 15, 2022 Report Share Posted November 15, 2022 Amiguinhos, Conheço um método bem complexo mas deve funcionar: dData := CTOD("30/10/12")? "Esta data esta na semana: ", WEEK( dData ) O Padrão ISO 8601 define que uma semana começa no Domingo, portanto se o dia 1 do mês da consulta cair num sábado este mês possui 6 semanas. Em qualquer outro dia da semana define que o mês tem 5 semanas. Então você podeusar a função BOM( StringDate ) Begining Of Month ou a função CDOW( CTOD( StringDate ) ) == "Saturday" poderá obter bom resultado. Ariston Santos and Luiz Fernando 2 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.