Programación General > Power Builder

 Guardar campos calculados

(1/1)

darksito:
Hola amigos de solocodigo tengo un pequeño problema el cual consite en guardar campos calculados de un dw external .
Estoy importando una archivo excel a un dw external una ves terminando quiero guardar todos los campos a tabla pero dentro del dw - external hay dos columanas calculadas compute_1(feriados) y compute_2(dominical).
Este el codigo que estoy usando para guardar mi data

--- Código: C++ ---Integer     li_Counter Integer li_countInteger li_obraInteger li_codigoString      ls_empleDecimal hnDecimal     hcinDecimal heDecimal dmDecimal ferDecimal dom dw_1.accepttext( )li_count=dw_1.rowcount( )for li_Counter  = 1 to li_count  step 1                                li_obra=dw_1.getitemnumber(li_counter,1)                        li_codigo=dw_1.getitemnumber( li_counter,2)                        ls_emple=dw_1.getitemstring( li_counter,3)                        hn=dw_1.getitemdecimal( li_counter,4)                        hcin=dw_1.getitemdecimal( li_counter,5)                        he=dw_1.getitemdecimal( li_counter,6)                        dm=dw_1.getitemdecimal( li_counter,7)                        fer= dw_1.object.compute_1[ li_count ]  //Campos Calculados                        dom= dw_1.object.compute_2[ li_count ] //Campos CalculadosINSERT INTO t_prueba           (      idobra,                   codigo,                   emple,                   hn,                h50,                fedf,                dm,                feri,                dom)    VALUES (  :li_obra,                   :li_codigo,                       :ls_emple,                   :hn,                :hcin,                :he,                :dm,                :fer,                :dom )  ;            if sqlca.sqlcode=0 then                commit;             else                Rollback;                Messagebox("AVISO","ERROR")            End if  Next 
Y la Ulima consulta como puedo obtener un campo especifico de excel por ejemplo , el valor del campo C6, gracias espero su ayuda


Les adjunto la imagen de mi dw external

F_Tanori:
Puedes usar un dw no external y hacer un update, o de la manera que lo tienes puedes tomar un campo calculado (siempre y cuando este en las filas), como cualquier otra columna del dw


--- Código: Text --- fer= dw_1.getItemDecimal(li_count,'compute_1') 



--- Cita de: "darksito" ---Y la Ulima consulta como puedo obtener un campo especifico de excel por ejemplo , el valor del campo C6, gracias espero su ayuda
--- Fin de la cita ---

Puedes abrir un archivo de excel empleando ActiveX (OLE Object), ejemplo:


--- Código: Text ---int retOLEObject oApp , oLibro    oApp = Create OLEObject  ret = oApp.ConnectToNewObject( "Excel.Application" )    if ret < 0 then    MessageBox(gsTitulo,"No se puede crear el reporte de Excel "+string(ret))    return  end if  oApp.Workbooks.Open("C:ArchivoExcel.xls")   oLibro = oApp.ActiveWorkbook.Worksheets[1] MessageBox('C6',string(oLibro.Cells[6,3])) //Valor Celda C6    oApp.Visible=True  oApp.DisConnectObject() 
Saludos

darksito:
Gracias pude solucionar mi problema , no cabe duda que este es un foro solidario suerte maestro  :good:

Navegación

[0] Índice de Mensajes

Ir a la versión completa