Foros del Web » Programando para Internet » PHP »

mssql_execute falla con rangos de fecha :(

Estas en el tema de mssql_execute falla con rangos de fecha :( en el foro de PHP en Foros del Web. hola que tal amigos espero que estén muy bien estoy haciendo un reporte que saco directamente de un procedimiento almacenado que esta en sql 2005 ...
  #1 (permalink)  
Antiguo 27/10/2009, 13:24
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
hola que tal amigos espero que estén muy bien estoy haciendo un reporte que saco directamente de un procedimiento almacenado que esta en sql 2005
pero hay algo curioso que no le he podido encontrar tengo esta parte para ejecutarlo
Código PHP:
$dblink mssql_connect("cyaserversan","sa","sqlcyasa"); 
$success mssql_select_db("CyA30G",$dblink);
$stmt=mssql_init('sprptSabanaDGI',$dblink); 
$fechaini='01/10/09'// parametros
$fechafin='27/10/09';
mssql_bind($stmt"@FechaIni"$fechainiSQLVARCHARfalse,  false,     20); 
mssql_bind($stmt"@FechaFin",  $fechafinSQLVARCHARfalse,  false,     20);
$result mssql_execute($stmt);
while(
$row=mssql_fetch_array($result)){ 
$valor1="1";


echo 
"<tr>\n"
echo 
"<td bgcolor='#FFFFFF'>$row[ProtAno]</td>\n"
echo 
"<td bgcolor='#FFFFFF'>$row[NumeroEscritura]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[FechaEscritura]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Acreditado]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[ISM]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[IMza]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[ILote]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[ICasa]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[IUnidadPrivativa]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[IFracc]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[ILocalidad]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CopiaSimple]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Predial]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CedulaCatastral]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Avaluo]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Agua]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CertificadoGravamen]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[TablaAmortizacion]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CartaContratacionSeguro]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[LiquidacionCredito]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CartaComplementoPoder]</td>\n"
echo 
"<td bgcolor='#FFFFFF'>$row[InstruccionFiduciaria]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[ActaMatrimonio]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CartaNaturalizacion]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CooperacionMunicipal]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CooperacionEstatal]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[NoAdeudoPredial]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[FolioDoc]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CartaNotarialInfonavit]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[InstruccionComiteTecnico]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CartInicioTramite]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CartaCesionCredito]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[SolicitudInscripcionCredito]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[AvisoRetencion]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CartaEntidadFinanciera]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[DisposicionesCrediticias]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[DescripcionVivienda]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[TablaIndiviso]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[ConstanciaCredito]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CartaInstruccionIrrevocable]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[CaratulaCreditoHipotecarioCAT]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[ReciboPagoCoopMunicipal]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[AnexoA]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[AnexoB]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[AnexoC]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[ActaSinValor]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[AvisoCatrastral]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[RegimenEscritura]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[RegimenNotaria]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[FolioRegimen]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Folio]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Credito]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Hipotecaria]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Inmobiliaria]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[NumCreditoInfonavit]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[NumCreditoHipotecario]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[NumSeguroSocial]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[AbogadoNombre]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Fondo]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[ISAI]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Derechos]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Departamento]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[FechaDepartamento]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[RPPBoletaIngreso]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[FechaBoleta]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[GuiaANEC]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[FechaEntrega2Testimonio]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[EntregadoA]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[FirmaDGI]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[DGIPago]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[DGICierre]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[Num]</td>\n";
echo 
"<td bgcolor='#FFFFFF'>$row[StatusEsc]</td>\n";
echo 
"</tr>\n";
}
echo 
"</table>\n"
como veran esto lo reflejo en un excel
este procedimiento recibe dos parametros fecha de inicio y de fin
si yo le pongo una fecha asi
Código PHP:
$fechaini='01/10/09'// parametros
$fechafin='27/10/09'
el programa corre perfecto pero si aumento el tiempo
Código PHP:
$fechaini='25/05/09'// parametros
$fechafin='27/10/09'
me marca el sig error
Cita:
Warning: mssql_execute() [function.mssql-execute]: stored procedure execution failed in C:\AppServ\www\Excel\excel.php on line 94
espero me puedan echar una mano puesto que no entiendo con unas fechas funciona y con otras no :(
saludos amigos besos

hola de nuevo encontre esta tabla
Cita:
SQLVARCHAR for binary
SQLINT4 for datetime
SQLFLT8 for decimal
SQLVARCHAR for image
SQLFLT8 for money
SQLCHAR for nchar
SQLTEXT for ntext
SQLFLT8 for numeric
SQLVARCHAR for nvarchar
SQLFLT8 for real
SQLINT4 for smalldatetime
SQLFLT8 for smallmoney
SQLVARCHAR for sql_variant
SQLINT4 for timestamp
SQLVARCHAR for varbinary
y le puse el SQLINT4
pero ahora no aparece absolutamente nada en el excel como si no hubiese mandado parametros
por favor espero sus comentarios gracias

he cambiado esto
$fechaini='25/05/09'; // parametros
$fechafin='27/10/09';
por esto

$fechaini='2009-05-25';
$fechafin='2009-10-27';

y ahora me marca este error
Cita:
Warning: mssql_execute() [function.mssql-execute]: message: Error al convertir el tipo de datos varchar a datetime.
por favor ayuda :(
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D

Última edición por GatorV; 28/10/2009 a las 08:51
  #2 (permalink)  
Antiguo 27/10/2009, 19:06
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: mssql_execute falla con rangos de fecha :(

pues he probado de muchas maneras y tengo el mismo error
Cita:
Warning: mssql_execute() [function.mssql-execute]: stored procedure execution failed in
lo he dejado todo de esta manera

Cita:
$dblink = mssql_connect("cyaserversan","sa","sqlcyasa");
$success = mssql_select_db("CyA30G",$dblink);
$ini='20090525';
$fin='20091027';
//$result = mssql_query("sprptSabanaDGI 20090525, 20091027");
$stmt=mssql_init('sprptSabanaDGI',$dblink);
$ini='20090525';
$fin='20091027';
mssql_bind($stmt, "@FechaIni", $ini, SQLVARCHAR, false, false, 20);
mssql_bind($stmt, "@FechaFin", $fin, SQLVARCHAR, false, false, 20);
$result=mssql_execute($stmt);
while($row=mssql_fetch_array($result)){
$valor1="1";


echo "<tr>\n";
echo "<td bgcolor='#FFFFFF'>$row[ProtAno]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[NumeroEscritura]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[FechaEscritura]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Acreditado]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[ISM]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[IMza]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[ILote]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[ICasa]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[IUnidadPrivativa]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[IFracc]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[ILocalidad]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CopiaSimple]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Predial]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CedulaCatastral]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Avaluo]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Agua]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CertificadoGravamen]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[TablaAmortizacion]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CartaContratacionSeguro]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[LiquidacionCredito]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CartaComplementoPoder]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[InstruccionFiduciaria]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[ActaMatrimonio]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CartaNaturalizacion]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CooperacionMunicipal]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CooperacionEstatal]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[NoAdeudoPredial]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[FolioDoc]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CartaNotarialInfonavit]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[InstruccionComiteTecnico]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CartInicioTramite]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CartaCesionCredito]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[SolicitudInscripcionCredito]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[AvisoRetencion]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CartaEntidadFinanciera]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[DisposicionesCrediticias]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[DescripcionVivienda]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[TablaIndiviso]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[ConstanciaCredito]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CartaInstruccionIrrevocable]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[CaratulaCreditoHipotecarioCAT]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[ReciboPagoCoopMunicipal]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[AnexoA]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[AnexoB]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[AnexoC]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[ActaSinValor]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[AvisoCatrastral]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[RegimenEscritura]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[RegimenNotaria]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[FolioRegimen]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Folio]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Credito]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Hipotecaria]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Inmobiliaria]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[NumCreditoInfonavit]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[NumCreditoHipotecario]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[NumSeguroSocial]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[AbogadoNombre]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Fondo]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[ISAI]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Derechos]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Departamento]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[FechaDepartamento]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[RPPBoletaIngreso]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[FechaBoleta]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[GuiaANEC]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[FechaEntrega2Testimonio]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[EntregadoA]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[FirmaDGI]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[DGIPago]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[DGICierre]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[Num]</td>\n";
echo "<td bgcolor='#FFFFFF'>$row[StatusEsc]</td>\n";
echo "</tr>\n";
}
echo "</table>\n";
por favor ayudenme gracias
:)
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
  #3 (permalink)  
Antiguo 28/10/2009, 08:50
 
Fecha de Ingreso: abril-2009
Ubicación: Miami
Mensajes: 182
Antigüedad: 15 años
Puntos: 8
Sonrisa Respuesta: mssql_execute falla con rangos de fecha :(

hola ..

cual es la línea:
Warning: mssql_execute() [function.mssql-execute]: stored procedure execution failed in C:\AppServ\www\Excel\excel.php on line 94

bueno, el error que te tira evidentemente es por los formatos de las fechas... no se realmente que estás queriendo hacer, e imagino que sea mostrar resultados entre dos fechas, te recomiendo el uso de BETWEEN en tu SELECT, con el formato correspondiente algo assí como:

$sql = "SELECT * FROM `tu_tabla` WHERE variable_fecha BETWEEN '".$fecha_i."' AND '".$fecha_f."' ORDER BY fecha";

ahora bien, esos $fecha_i y $fecha_f deben tener o estar en el mismo formato que tu variable_fecha de tu base de datos .. un salu2!!
__________________
-----------------------------------
Éxitos !!! .. joao
  #4 (permalink)  
Antiguo 28/10/2009, 10:39
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: mssql_execute falla con rangos de fecha :(

hola gracias por responder esta es la linea
Cita:
$result = mssql_execute($stmt);
las fechas no eran el problema pues asi las ejecuto en sql
y bueno tuve q borrar todo hacerlo de nuevo y me ha quedado asi
Cita:
$ini='20090625';
$fin='20091028';
$db_conexion= mssql_connect("cyaserversan", "sa", "sqlcyasa") or die("No se pudo conectar a la Base de datos");
mssql_select_db("CyA30G") or die(mssql_error());
$stmt=mssql_init("sprptSabanaDGI",$db_conexion);
mssql_bind($stmt,"@FechaIni",$ini,SQLVARCHAR);
mssql_bind($stmt,"@FechaFin",$fin,SQLVARCHAR);
$result=mssql_execute($stmt);
while($row=mssql_fetch_array($result)){.....
tabla....
creo q el error fue al enviar los parametros :(
pero no entiendo muy bien por q
muchas gracias por su tiempo
__________________
WHERE IS MY BLUE SUNNY SKY??
pd: todos los karmas son bienvenidos :D
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:17.