Necesito ayuda plis, el problema es que estoy migrando un codigo de ASP a PHP y para php estamos usando ADODB para crear la coneccion con la base de datos oracle, pero el problema es que las funciones me estan dando problemas, como el MoveNext() por ejemplo, no las reconoce y no se que es lo que pasa..
Les dejo los codigos para que me puedan ayudar plis...
ASP:
Código ASP:
Ver original
<% Response.ContentType="text/xml" Response.Write("<?xml version='1.0' encoding='iso-8859-1'?>") %> <% ' SC4Consulta_datos_negocio.asp ' Generador de XML para las refacturaciones listadas por la consulta de Clientes Opcion Otros Negocios AbreConn() Set RS = Server.CreateObject("ADODB.Recordset") NroSuministro = 2648727' request("suministro") SQL = " SELECT cor_documento correlativo, " SQL = SQL & " nro_documento nro_documento," SQL = SQL & " tip_documento tipo_documento," SQL = SQL & " TO_CHAR (fec_documento, 'dd/mm/yyyy') fecha_emision," SQL = SQL & " TO_CHAR (fec_vencimiento, 'dd/mm/yyyy') fecha_vencimiento," SQL = SQL & " tot_documento total, " SQL = SQL & " usuario_aprobador aprobador," SQL = SQL & " fec_documento fec" SQL = SQL & " FROM nucssb0030 nuc30" SQL = SQL & " WHERE cod_empresa = "&SysEmpresa&" AND nro_suministro = "&NroSuministro&" AND tip_documento = 'ON'" SQL = SQL & " UNION" SQL = SQL & " SELECT cor_documento correlativo, " SQL = SQL & " nro_documento nro_documento," SQL = SQL & " tip_documento tipo_documento," SQL = SQL & " TO_CHAR (fec_documento, 'dd/mm/yyyy') fecha_emision," SQL = SQL & " TO_CHAR (fec_vencimiento, 'dd/mm/yyyy') fecha_vencimiento," SQL = SQL & " tot_documento total, " SQL = SQL & " usuario_aprobador aprobador," SQL = SQL & " fec_documento fec" SQL = SQL & " FROM hisssb0004" SQL = SQL & " WHERE cod_empresa = "&SysEmpresa&" AND nro_suministro = "&NroSuministro&" AND tip_documento = 'ON'" SQL = SQL & " ORDER BY fec DESC" SET RS = DBTO.EXECUTE(SQL) Escribe("<registro>") DO WHILE NOT RS.EOF Escribe ("<linea>") for i = 0 to RS.fields.Count - 1 Escribe ("<"&lcase(rs.fields(i).name)&">" & RS(i) & "</"&lcase(rs.fields(i).name)&">") next Escribe ("</linea>") RS.MOVENEXT LOOP Escribe("</registro>") CierraConn() %>
PHP:
Código PHP:
Ver original
<?php include ("conn.php"); # INCLUIR CLASE DE CONEXION echo("<?xml version='1.0' encoding='iso-8859-1'?>"); # DEFINICION DE VARIABLES $i = ""; $RS = ""; $fld = ""; $num_columns = ""; $NroSuministro = $_POST['suministro']; #$consul= =""; $SysEmpresa = 1; $SQL = ""; $SQL = $SQL . "SELECT cor_documento correlativo, "; $SQL = $SQL . "nro_documento nro_documento, "; $SQL = $SQL . "tip_documento tipo_documento, "; $SQL = $SQL . "TO_CHAR (fec_documento, 'dd/mm/yyyy') fecha_emision, "; $SQL = $SQL . "TO_CHAR (fec_vencimiento, 'dd/mm/yyyy') fecha_vencimiento, "; $SQL = $SQL . "tot_documento total, "; $SQL = $SQL . "usuario_aprobador aprobador, "; $SQL = $SQL . "fec_documento fec "; $SQL = $SQL . "FROM nucssb0030 nuc30"; $SQL = $SQL . "WHERE cod_empresa = ".$SysEmpresa. " " ; $SQL = $SQL . "AND nro_suministro = ".$NroSuministro." "; $SQL = $SQL . "AND tip_documento = 'ON' "; $SQL = $SQL . "UNION "; $SQL = $SQL . "SELECT cor_documento correlativo, "; $SQL = $SQL . "nro_documento nro_documento, "; $SQL = $SQL . "tip_documento tipo_documento, "; $SQL = $SQL . "TO_CHAR (fec_documento, 'dd/mm/yyyy') fecha_emision, "; $SQL = $SQL . "TO_CHAR (fec_vencimiento, 'dd/mm/yyyy') fecha_vencimiento, "; $SQL = $SQL . "tot_documento total, "; $SQL = $SQL . "usuario_aprobador aprobador, "; $SQL = $SQL . "fec_documento fec "; $SQL = $SQL . "FROM hisssb0004 "; $SQL = $SQL . "WHERE cod_empresa = ".$SysEmpresa." "; $SQL = $SQL . "AND nro_suministro = ".$NroSuministro." "; $SQL = $SQL . "AND tip_documento = 'ON' "; $SQL = $SQL . "ORDER BY fec DESC "; #$SQL = $SQL . "SELECT * FROM CCC"; #$SQL = $SQL . "SELECT nombre, direccion FROM CCC"; # EJECUTA LA CONSULTA $RS = $DB->Execute($SQL); #CUENTA CUANTOS REGISTROS TE TRAJO LA CONSULTA Y LOS GUARDA EN UNA VARIABLE $num_columns = $RS->RecordCount(); /* contamos el total de registros de resultado */ echo ("SE OBTUVIERON ".$num_columns . "CAMPOS<br>"); #MUESTRA LA CANTIDAD DE REGISTROS EN UN MENSAJE # CARGA LOS DATOS EN UN BUCLE for ($i=0; $i < $num_columns; $i++) { $fld[$i] = $RS->Fields($i); echo("MENSAJE"." ".$fld[$i]."OK"); } # ESCRIBE EN EL DOCUMENTO XML echo("<registro>"); #RECORRE EL BUCLE while (!$RS->EOF) { echo "<tr>"; for ($i=0; $i < $num_columns; $i++) { echo "<td>" . $fld[$i]->value . "</td>"; #ESCRIBE EL VALOR DEL REGISTRO EN LA COLUMNA Y FILA CORRESPONDIENTE } echo "</tr>"; #PASA AL SIGUIENTE REGISTRO $RS->MoveNext(); } #SE CIERRA LA CONEXION $conn->close(); #SE LIMPIAN LAS VARIABLES $RS = null; $conn = null; ?>
Cualquier informacion me la piden :D
Saludos