|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - juan_0986
26
« en: Miércoles 30 de Julio de 2008, 17:14 »
Que tal buenos dias, claro que se puede hacer lo que necesitas, mira no le he probado en el power builder pero en sql funciona perfecto:
declare @formula varchar(250) select @formula='(3 * 2) - 1' execute ('select ' + @formula )
lo que podrias hacer es crearte un store que lea tus formulas almacenadas en las variables que le mandes y listo, espero te sirva
27
« en: Miércoles 30 de Julio de 2008, 05:38 »
buenas noches que tal, ojala alguien pueda ayudarme yo necesito crear una base de datos por programacion y lo quiero hacer en un store según los nombres y rutas que envie el usuario, yo se que para crear una data el codigo es este:
CREATE DATABASE library ON PRIMARY (NAME=library_data, FILENAME='C:Archivos de programaMicrosoft SQL ServerMSSQLDatalibrary.mdf', SIZE=50MB, MAXSIZE=70MB, FILEGROWTH=1MB)
ahora bien tanto el nombre como la ruta necesito enviarlas en variables, lo que hice fue lo sgt
declare @ruta_mdf varchar(250),@nombre_data varchar(250) set @nombre_data='mi_data_nombre' set @ruta_mdf='D:mi_rutadata_conta_' + @nombre_data + '.mdf' CREATE DATABASE @nombre_data ON PRIMARY ( NAME=@nombre_data, FILENAME=@ruta_mdf, SIZE=50MB, MAXSIZE=70MB, FILEGROWTH=1MB )
bueno pero esta codificacion me arroja un error el cual es que no lee el name ni el filemane en variables y como necesito que las datas se creen segun los parametros que envie, tambien probe con ponerle un set antes del name para que lo lea, pero fue inutil, busque informacion tambien en internet pero no encontre sobre lo que necesito, o quizas no se pueda crear base de datos de la forma que necesito, bueno oajala alguien pueda ayudarme
estoy usando el sql 2000
28
« en: Miércoles 14 de Mayo de 2008, 16:28 »
los apis de windows ya vienen establecidos por el propio s.o. tu no puedes cambiarle el nombre de la funcion, Beep es la funcion, no es el tipo de sonido, pero puedes investigar sobre apis de windows, nada mejor que tu propia investigación para que resuelvas tus dudas
29
« en: Martes 13 de Mayo de 2008, 01:00 »
usa los apis de windows. declara la funcion beep en global external functions
FUNCTION boolean Beep(long freq,long dur) LIBRARY "Kernel32.dll"
y en tu boton de comando programas lo sgt.
Boolean rtn Long ll_freq, ll_dur ll_freq = 500 //volumen del sonido ll_dur = 20 // prolongacion del sonido rtn = Beep(ll_freq, ll_dur) espero te sirva
30
« en: Sábado 3 de Mayo de 2008, 23:04 »
buenas tardes!!! tengo un sistemita de planillas donde tengo una tabla personal y necesito que me aparesca en un reporte todo el personal mas su respectiva foto. 1. Lo 1ero que hice fue crear un campo foto de tipo varchar donde almaceno la ruta de la foto del trabajador, ahora, si solamente imprimo una ficha x cada uno no tengo ningun problema en mostrar la foto ya que añado un campo picture al datawindow y mediante codigo le asigno la imagen: dw_1.object.p_logo.filename=dw_1.object.foto[getrow()] esto funciona bien si solo imprimo en pantalla de 1 trabajador en 1 un trabajador pero si tengo a todos los trabajadores en el mismo reporte ya no puedo hacer esto: dw_1.object.p_logo.filename=dw_1.object.foto[getrow()]
2. Bueno despues cambie el tipo del campo foto por image, entonces asigne al datawindow un objeto "database ole object" y le di los sgts valores: client class ===== datawindow /* sale por defecto client name===== foto /* escribi un nombre cualquiera key clause ===== codper /* es la pk de mi tabla table ======== tabla_personal /* seleccione la tabla donde esta la foto large binary==== foto /* el campo de la tabla que almacena la foto ole class====== paint picture /* elegi este objecto de la lista desplegable
3. bueno el retrieve de mi datawindow no me arroja ningun error pero tampoco me muestra la foto, por supuesto que ya tengo las fotos guardadas en la data
Quizas alguien haya tenido este problema y pueda ayudar, lo agradeceria bastante
31
« en: Miércoles 30 de Abril de 2008, 20:43 »
SELECT A.MANTENIMIENTO_EQUIPO.ID_CLIENTE,B.MAE_CLIENTES.RAZCLI FROM BD_EQUIPO A,BD_Facturacion_Energia B WHERE A.ID_CLIENTE=B.CODCLI si te das cuenta cuando escribo from bd_equipo a alli le asigno una letra para cada base de datos,
bueno de todas maneras gracias pero ya lo resolvi, lo que tenia que hacer es declarar el campo que quiero conectar a mi otra data como un datawindow child y asi darle su propia transaccion
32
« en: Domingo 13 de Abril de 2008, 01:02 »
para que no aparesca en el excell los campos que estan ocultos, debes de suprimirlos del datawindos, al hacer esto mejorara tu expòrtacion al excell, y no alterar el reporte asi estes usando esos campos ocultos como condicion; quitalos con la tecla suprimir no del select de la sintaxis.
33
« en: Miércoles 9 de Abril de 2008, 22:20 »
buenas tardes, habra alguna manera de conectarse a acces por medio de rutas sin tener que crear el dsn en las maquinas; es decir;
necesito conectarme a distintas bases de datos de access, pero no puedo estar creando dsn por cada data de access que necesite ya que las datas seguiran aumentando y tendria que crear un nuevo dsn cada vez que se cree una nueva data en cada estacion en la cual ejecuto mi programa;
no creo que hayga algo parecido a las conexiones ini pero con base de datos access pero quizas alguien sepa hacer una conexion a una base de datos por medio de ruta algo parecido a lo que se hace con visual basic y los datasources donde se agrega alli la ruta de la data donde se necesita trabajar
espero alguien sepa la respta, gracias
34
« en: Viernes 4 de Abril de 2008, 21:55 »
buenas tardes y gracias por contestar, bueno eso fue lo que hize primero en la sintaxis del datawindows::
SELECT A.MANTENIMIENTO_EQUIPO.ID_CLIENTE,B.MAE_CLIENTES.RAZCLI FROM BD_EQUIPO A,BD_Facturacion_Energia B WHERE A.ID_CLIENTE=B.CODCLI
las 2 datas pertenencen a sql y estan en el mismo servidor, ahora al querer seguir avanzando con el datawindow alli me arroja un error de que el objecto bd_equipo no existe es decir bd_equipo lo toma como si fuera una tabla.
Bueno mi 2da opcion fue crear netamente mi datawindows con la tabla mantenimiento_equipo y al campo id_cliente darle un formato de tipo dropdowdw para asi mostrar la razon social del cliente la cual este dato se encuentra grabado unicamente en mi data BD_Facturacion_Energia y la tabla mae_clientes pero al realizar un settransobject(trans3) que es mi variable de transaccion que me conecta con la data BD_EQUIPO me arroja tb un error diciendo que no encuientra la tabla mae_clientes ya que esta se encuentra en otra data, quizas haya alguna manera de conectar un datawindow usando 2 transacciones
bueno espero me haya entendido y si puede ayudarme lo agradeceria bastante
35
« en: Jueves 3 de Abril de 2008, 16:35 »
Buenos dias quizas alguien pueda ayudarme tengo una aplicacion en la cual manejo 2 base de datos ahora bien estas las conecto mediante 2 varibles de transaccion===> trans1 y trans2; tengo un datawindows donde neseito mostrar informacion de las 2 Datas pero si hago un settransobject(trans1) porsupuesto que no mostrara los datos de mi 2da base de datos, quizas alguien haya tenido este caso alguna vez; bueno lo que me gustaria saber es como deberia hacer la conexion a un datawindows que hace referencia a 2 base de datos, gracias de antemano
36
« en: Sábado 1 de Marzo de 2008, 15:39 »
Que tal bueno gracias por la ayuda brindada, lo que mas se ajusta a mis necesidades es el cursor dinamico que se crea en el power ya que tengo que extraer los datos de una data en acces bueno mire la sentencia del sqlsa tuve que agregarle lo sgt para poder obtener los resultados que necesitaba:
1) trans2 es una variable donde almaceno mi transaccion de mi data en acces, cabe recalcar que la conexion es exitosa 2) utilizo el do until por que necesito recuperar todas las ctas que tengo en la tabla, ya que sin el do until solo me recupera un registro 3)tengo una tabla la cual hace mi refrencia el datawindow dw_1 donde solo inserto los registros recuperados con el cursor, mas no los guardo por que solo quiero mostrarlos no quiero que quede almacenado en mi tabla
long reg DECLARE my_cursor DYNAMIC CURSOR FOR SQLSA; PREPARE SQLSA FROM "SELECT num_cta from enct0108 where len(num_cta)=7 order by num_cta" using trans2; OPEN DYNAMIC my_cursor ; FETCH my_cursor INTO :ncta; do until trans2.sqlcode=100 reg=dw_1.insertrow(0) dw_1.object.num_cta[reg]=ncta FETCH my_cursor INTO :ncta; loop CLOSE my_cursor; messagebox('','ok')
bueno la recuperacion de datos es exitosa me muetra los datos de la tabla de acces a la que hace referencia miu cursor, ahora el problema es despues de el mensaje ok; no puedo usar ningun boton de comando de la ventana donde esta mi dw con los datos recuperados, quisiera saber si estoy haciendo algo malo; por que el cursor ya esta cerrado, por lo general no puedo usar ningun comando de la ventana mientras el cursor este abierto, espero pueda ayudarme
37
« en: Lunes 25 de Febrero de 2008, 21:14 »
bueno gracias por responder; lo que yo deseo ex extarer datos de una tabla de access desde el`power builder, pero recien cuando ejecuto mi aplicacion sabre de que tabla los quiero extraer; por eso no puedo hacer un select de esta manera:
select * from plan_ctas_2007 ;
por que recien cuado el usuario ingresa sabre si quiero de la tabla plan_ctas_2007 o plan_ctas_2008 o plan_ctas_2009
ahora si me dejo entender??, esto lo puedo hacer con un choose case de esra forma choose case año_act case 2007 select * from plan_ctas_2007 case 2008 select * from plan_ctas_2008 end choose y asi lo podria hacer pero tendria que aumentar un case x cada año ya que esas tablan recien se cream al iniciar el año
bueno espero me haya entendido y pueda ayudarme
38
« en: Domingo 24 de Febrero de 2008, 23:51 »
si quieres abrir un archivo especifico puedas usar un control ole, pero si quieres abrir la aplicaion de algun porgrama lo puedes hacer con el codigo "run" ejemplo run("C:\Archivos de programa\Microsoft Office\OFFICE11\POWERPNT.EXE") con el run puedes abrir cualquier aplicacion, solo indicando la ruta donde se encuentra el ejecutable de la misma
39
« en: Domingo 24 de Febrero de 2008, 15:26 »
Ho hay ningun forista que tenga una idea de como puedo resolver el problema?? o acaso no me explico bien?? espero puedan ayudarme!!!
40
« en: Domingo 24 de Febrero de 2008, 03:56 »
necesariamente tienes que crear los 2 argumentos tipo fecha como dice leoandres pero tb puedes hacer tu filtro de esta manera campo_fecha between :fecha1 and :fecha2
41
« en: Domingo 24 de Febrero de 2008, 03:46 »
tb puedes usar el fi de este modo: if <condicion> then <accion1> else <accion2>
42
« en: Domingo 24 de Febrero de 2008, 03:23 »
uno de los programas puede ser el adobe acrobat, te crea un impresora virtual con la que puedes guardar tus archivos como pdf
43
« en: Sábado 23 de Febrero de 2008, 03:58 »
mira para hacer esto a la hora de generar tu ejecutabe solo activale la opcion New Visual Control; esta opcion hay en power 9 cuando ya tiene instalado el parche, quizas el power 7 tb tenga la misma opcion
44
« en: Sábado 23 de Febrero de 2008, 03:45 »
si quieres usar el keydown() en sle_1, em_1, etc create un evento con la propiedad event id = pbm_keydown y en los datawindos funciona en el event id pbm_downkey no en el pbm_keydown
45
« en: Sábado 23 de Febrero de 2008, 03:42 »
para bloquear una opcion del menu puedes hacerlo de esta forma
por ejemplo si tienes este tipo de menu Archivos Mantenimiento tabla1 tabla3 tabla2 tabla4
w_ventana_mdi.menuid.item[1].item[1].enabled= false con esta instruccion bloqueas la tabla1
para esto debes de tener una tabla usuarios
yo tb tuve la necesidad de hacer este bloqueo para determinads usuarios 1º creas una tabla donde guardes las opciones de tu menu con su respectivo item ejplo. tablas(nom_menu,item1,item2) tabla1,1,2 tabla2,1,2 aqui guardas los items de ubicacion de tus opciones 2º creas una tabla donde guardes las opciones de los usuarios ejplo tabla_opciones(nomusuario,nomtabla,flag) usuario1,tabla1,* quiere decir que tiene acceso usuario1,tabla2,& no tiene acceso a ese menu
ahora pudes crear un evento en el open de tu mdi donde declares un cursor y te jale los items de la tabla_opciones donde el flga sea & int it1,it2 ej select item1,item2 into:it1,:it2 where usuario=:usuario_ingreso and flag='&' si encontro un flag & es decir que no tiene opcion aqui usas: w_ventana_mdi.menuid.item[it1].item[it2].enabled= false y listo esto te desactivara ese item del menu, espero te sirva, esto tb te ayudaria a que le puedas dar mantenimeitno a las opciones de cada usuario
46
« en: Sábado 23 de Febrero de 2008, 03:26 »
para exportar un reporte a pdf no te cmpliques la vida instala el adobe acrobat en tu pc, esto te creara una impresora virtual acrobat distiller, con lo que podras guardar tus archivos como pdf., solo tienes que imprimirlo
47
« en: Sábado 23 de Febrero de 2008, 02:54 »
buenas noches que tal sr F_tanori, necesito jalar datos de una tabla plan_ctas hecha en acces, para esto dependiendo el año puedo obtener datos de plan_ctas2007, plan_ctas2008,etc; para esto en el sql creo el sgt procedimiento almacenado
CREATE PROCEDURE plan_ctas @numcta varchar(15),@nomcta varchar(35) AS create table #planctas( num_cta varchar(15), nom_cta varchar(35)) insert into #planctas values(@numcta,@nomcta) select * from #planctas
lo que estoy haciendo es crearme una tabla temporal #planctas donde cargare lo datos de la tabla que se encuentra en acces; despues de crear la tabla hago la inserccion de registros, y ademas debe devolverme el select de la tabla temporal para almacenarlo en un datawindows en el power builder, claro que ese datawindows hace referencia a mi store procedure; hasta aqui esta todo bien el proceso corre perfectamente
ahora en el power builder lo primero que hice fue crearme un cursor para seleccionar el num_cta y el nom_cta de la tabla en acces, la tabla del acces que almacena el plan de cuentas del 2007 es "enct0107"
declare cur cursor for select num_cta,nom_cta from enct0107 where len(num_cta)=7 order by num_cta using trans2; open cur; fetch cur into :nucta,:nocta; do until trans2.sqlcode=100 /*aqui estoy declarando el procedimiento que cree en el sql*/ DECLARE cargar_ctas PROCEDURE FOR plan_ctas @numcta=:nucta,@nomcta=:nocta; EXECUTE cargar_ctas; fetch cur into :nucta,:nocta; loop close cur;
bueno pero cuando hjago el retrieve en mi datawindows solo me devulve un registro; cuando la tabla en acces tiene muchos mas, bueno no se que estare haciendo mal o cual cree que pueda ser mi error; espero pueda ayudarme
48
« en: Viernes 22 de Febrero de 2008, 03:56 »
haber para que el cursor se valla al primer lugar de tu editmask solo tienes que programar el sgt codigo en el evento getfocus()
this.selecttext(1,0)
49
« en: Miércoles 20 de Febrero de 2008, 02:53 »
Si lo que quieres es ver tu menu con iconos en forma de tolbar, lo que tienes que hacer es activar esta opcion en tu ventana mdi; puedes hacerlo de este modo
Application ia_App ia_App = GetApplication() ia_App.ToolbarText = True
esto lo programas en el open de la ventana
50
« en: Lunes 18 de Febrero de 2008, 16:30 »
Que tal!!! Primero que nada para que realizes un filtro a un datawindow este tiene que tener argumentos de recuperacion "retrieval arguments" alli declaras las variables que seran los filtros para tu datawindows y en el where del datawindow escribes la condicion por ejemplo: en retrieval arguments puedes declarar la variable non de tipo string y en el where del datawindow tabla1.campo_nombre like nom ahora en el comand buttom realizas lo sgt, dw_1.setrransobject(sqlca) //sqlca es la transaccion por defecto de la data dw_1.retrieve(sle_1.text + '%') el '%' lo utilizas si tu la condicion para tu argumento es like; si fuera un = no utilizas '%'; si quieres que lo realize con un ejemplo enviame tu tablita y te creo un datawindow con los filtros que necesites no hay problema; para que puedas analisarlo mi correo juan_rcm@hotmail.com; te ayudare en lo que pueda
|
|
|