FoxPro/Visual FoxPro - PLINIO: Necesito tu ayuda sobre SQL-SERVER

 
Vista:

PLINIO: Necesito tu ayuda sobre SQL-SERVER

Publicado por Guillermo (8 intervenciones) el 07/04/2009 16:59:22
Plinio: Tengo un problema con tablas en SQL-SERVER

- Estoy realizando un sistema donde trabajo con una base de dato en SQL-SERVER. Ya la tabla esta creada.
- Realizo la conexión con la tabla y sale OK.
- Creo una vista con una tabla que esta en la base de SQL-SERVER y también sale ok.
Creo la vista por el generador, cuando creo esa vista marco en “Send SQL Updates”.
- luego realizo un programa donde tomo los datos de una tabla que esta en DBF y la paso a la tabla que esta en SQL-SERVER de la siguiente forma.

OPEN DATABASE FACIL

gnConnHandle=SQLCONNECT('FACIL')
IF gnConnHandle <= 0
MESSAGEBOX('No hay conexión con la Base FACIL.MDF', 16, 'Error en Conexión')
ELSE
MESSAGEBOX('Conexión con la Base FACIL.MDF', 48, 'Conexión')
***************
CREATE SQL VIEW "FACIL_FACTURA_COBROS" REMOTE CONNECTION FACIL AS SELECT * FROM "FACIL_FACTURA_COBROS"
SELECT 0
USE "FACIL_FACTURA_COBROS" && tabla en SQL-SERVER
BROWSE
SELECT 0
USE FINAN && tabla en DBF
GO TOP
I=0
DO WHILE .NOT. EOF()
I=I+1
WAIT "I="+LTRIM(STR(I,10)) WINDOW NOWAIT
SELECT FACIL_FACTURA_COBROS
LOCATE FOR FACTURA=FINAN.FACT
IF EOF()
APPEND BLANK IN FACIL_FACTURA_COBROS
REPLACE FACTURA WITH FINAN.FACT IN FACIL_FACTURA_COBROS
ENDIF
REPLACE IMPORTE WITH FINAN.PAGO IN FACIL_FACTURA_COBROS
REPLACE FECHA_COBRO WITH FINAN.FPAG IN FACIL_FACTURA_COBROS

SELECT FINAN
SKIP
ENDDO
SELECT FACIL_FACTURA_COBROS
BROWSE

SQLDISCONNECT(gnConnHandle)
ENDIF

*DELETE CONNECTION Myconn2
WAIT "El Proceso termino Satisfactoriamente" WINDOW

y luego verifico que tenga datos y esta correcta porque todos los datos los paso a la vista de SQL-SERVE.
- Luego creo un formulario y le digo que trabaje con esa vista y resulta que para el formulario es como si estuviera vacío.
Que es lo que pasa que me dice que esta vacío y sin embargo voy por vista y le hago un browse y lo hace bien, tiene datos.
Espero por tu respuesta y de antemano te doy las gracias.
Guillermo
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:PLINIO: Necesito tu ayuda sobre SQL-SERVER

Publicado por Marvin Emilson Pineda (81 intervenciones) el 07/04/2009 21:56:04
Interesante,

pero si tienes acceso a la tabla en SQL Server para que estas creando una vista???? no se te haria mas facil impactar la tabla en SQL directamente? asi te evitas intermediarios...

solo tienes que hacer:

Do While !EOF()

local SQLcmd
Text To SQLcmd NoShow Text PreText 7
SELECT * FROM FACIL_FACTURA_COBRO WHERE Factura = <<LTRIM(STR(Fact))>>
EndText

IF SQLEXEC(gnConnHandle, SQLcmd, "SQLResult") < 0 THEN
MESSAGEBOX("Error al intentar recuperar informacion del origen de datos")
RETURN .F.
ENDIF

IU = (RECCOUNT('SQLResult') = 0)
USE IN SELECT('SQLResult')
SELECT finan

IF IU THEN
*!! Insertar
TEXT TO SQLcmd NOSHOW TEXT PRETEXT 7
INSERT INTO facil_factura_cobro (Factura, Importe, FechaCobro) VALUES (<<LTRIM(STR(fact))>>, <<LTRIM(STR(pago, 10, 2))>>, '<<DTOS(fpag)>>')
ENDTEXT
ELSE
*!! Actualizar
UPDATE facil_factura_cobro SET importe = <<LTRIM(STR(pago, 10, 2))>>, FechaCobro = '<<DTOS(fpag)>>' WHERE factura = <<ltrim(str(fact))>>
ENDIF

IF SQLEXEC(gnConnHandle, SQLcmd) < 0 THEN
MESSAGEBOX("Error al intentar impactar origen de datos")
RETURN .F.
ENDIF

EndDo
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:Marvi Emilson voy a probar, gracias

Publicado por Guillermo (8 intervenciones) el 07/04/2009 22:52:51
Marvi voy a probar, gracias
Guillermo
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