FoxPro/Visual FoxPro - como saco la diferencias entre dos fechas

 
Vista:

como saco la diferencias entre dos fechas

Publicado por MARK (1 intervención) el 14/02/2001 12:08:20
espero me ayuden , necesito sacar la diferencia de dias entre dos fechas , por ejemplo : 12/5/1998
y 12/02/2001, desde ya muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:como saco la diferencias entre dos fechas

Publicado por Elmer Rodriguez (40 intervenciones) el 14/02/2001 19:12:34
Eso es muy sencillo, mi amigo.
Supongo que te refieres a los dias que hay desde la fecha1 hasta la fecha2.

nDias = dFecha1 - dFecha2

o

nDias = {12/02/2001} - {12/05/1998}

o

nDias = DATE() - {12/05/1998}

nDias contiene los dias que hay desde la fecha1 hasta la fecha2.
No olvides antes setear el formato de fecha.
Ej.
SET DATE TO DMY
SET STRICTDATE TO 0

Espero te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:como saco la diferencias entre dos fechas

Publicado por Franklin Gutiérrez (13 intervenciones) el 26/09/2020 04:43:27
OJO: NO ME FUNCIONABA PERO BUSCANDO EN LA WEB ENCONTRÉ OTRO EJEMPLO DONDE USABAN LA FUNCIÓN Day() Y LO USÉ PARA MIS DOS FECHAS Y ME FUNCIONÓ PERFECTO. GRACIAS!!!


Saludos,

Probé esta solución ofrecida por Elmer y no me funcionó. Recuerdo que antes lo hacía de una manera muy facil pero no lo recuerdo porque tengo tiempo sin programar.

Qué podría estar haciendo mal?

Este es el código que tengo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
*** Le coloco los campos adicionales: Días, Banco, Nro transacción y Fecha del Despacho
SET DATE TO DMY
SET STRICTDATE TO 0
 
SELECT vreportes
i = 1
SCAN
	lnSaldo = vreportes.saldo
	lnStatus = vreportes.status
 
	IF lnSaldo > 0
 
		lnFact_num = vreportes.fact_num
 
		sql = "select n.fact_num "
		sql = sql + "from reng_ndd r inner join not_dep n on "
		sql = sql + "r.fact_num = n.fact_num "
		sql = sql + "where r.tipo_doc = 'F' and "
		sql = sql + "r.num_doc = ?lnFact_num and "
		sql = sql + "n.anulada = 0"
		tresult = SQLEXEC(tconnect, sql, 'cNota_dpp')
		*BROWSE
 
		lnNotaDesp = cNota_dpp.fact_num
 
		sql = "select fec_emis from not_dep where fact_num = ?lnNotaDesp"
		tresult = SQLEXEC(tconnect, sql, 'cNotaDesp')
		*BROWSE
 
		ldFechaDesp = cNotaDesp.fec_emis
		ldHoy = DATETIME()
 
		lnDias = ldHoy - ldFechaDesp
		lcDias = ALLTRIM(STR(lnDias))
 
		IF i < 30
 
			MESSAGEBOX("ldHoy: " + DTOC(ldHoy))
			MESSAGEBOX("ldFechaDesp: " + DTOC(ldFechaDesp))
			MESSAGEBOX("lcDias: " + lcDias)
 
		ENDIF
 
	ENDIF
 
	i = i + 1
 
ENDSCAN
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar