Qlik Community

QlikView Creating Analytics

Discussion Board for collaboration related to Creating Analytics for QlikView.

Highlighted
Not applicable

Macro

Buenas tardes:

Espero que alguien me pueda ayudar con la siguiente inquietud: Estoy construyendo una macro que me controle la semana actual del año pero no he podido a travez de la funcion Week(now()). He podido controlar el Year(now()), el Month(now()), etc, pero me aparece un error "Type mismatch: 'week' ". Espero que alguien me pueda ayudar u orientar.

Gracias

1 Solution

Accepted Solutions
Not applicable

Macro

Edzamo,

La siguiente macro te selecciona la semana en curso y las 4 anteriores del año en curso, si he entendido bien.


Normal 0 21 MicrosoftInternetExplorer4
sub Semanas4
ActiveDocument.GetField("Year").Select ActiveDocument.Evaluate("year(today(1))")
ActiveDocument.GetField("Semana").Select ActiveDocument.Evaluate("'>' & num(week(today(1))-4) & '<=' & num(week(today(1)))")
end sub




Logicamente tienes que tener un campo llamado Semana (Que será week('tufecha')).

La macro la puedes asociar a un botón o en las propiedades de la pestaña.

Saludos



12 Replies
Not applicable

Macro

Edzamo,

Das pocos detalles.

Te recomiendo que mires las funciones de fecha y Hora en la ayuda de QV.

En ellas tienes varias opciones para week.: week, weekname, weekyear, weekday...

Las buenas practicas recomiendan usar mejor el today(), en vez del now().

Saludos

Not applicable

Macro

Sergio,

Gracias por tu respuesta. Lamentablemente aun sigo teniendo inconvenientes. El tema es que estoy tratando de armar una macro que se active al seleccionar una pestaña de mi modelo. La macro debe identificar cual es la semana actual del año y en base a esto seleccionar las 4 ultimas semanas vigentes del año, para esto, estoy trabajando con el sigueinte script:

Set T=ActiveDocument.Getfield("Semana")
T.Select " "
IF Week(now()) < "27" then
ActiveDocument.Fields("Semana").ToggleSelect "26"
ActiveDocument.Fields("Semana").ToggleSelect "25"
ActiveDocument.Fields("Semana").ToggleSelect "24"
ActiveDocument.Fields("Semana").ToggleSelect "23"
END IF

Esto me genera el siguiente error: Type mismatch: 'Week' y si cambio el now() por el today() me aparece Type mismatch: 'today'

Ya probe con Weekyear y me presenta el mismo error. Espero que en esta ocacion sea un poco mas claro con lo que me esta pasando. Estoy utilizando Qv Enterprise 8.02

Saludos,

Not applicable

Macro

Edzamo,

La siguiente macro te selecciona la semana en curso y las 4 anteriores del año en curso, si he entendido bien.


Normal 0 21 MicrosoftInternetExplorer4
sub Semanas4
ActiveDocument.GetField("Year").Select ActiveDocument.Evaluate("year(today(1))")
ActiveDocument.GetField("Semana").Select ActiveDocument.Evaluate("'>' & num(week(today(1))-4) & '<=' & num(week(today(1)))")
end sub




Logicamente tienes que tener un campo llamado Semana (Que será week('tufecha')).

La macro la puedes asociar a un botón o en las propiedades de la pestaña.

Saludos



Not applicable

Macro

Sergio, muchas gracias. Con este script la macro esta corriendo muy bien. Nuevamente muchas gracias por tu pronta y acertada ayuda.

Not applicable

Macro

Sergio; buen día

Estoy tratando de abrir un documento de qlikview desde otro documento. Para esto tengo un boton que llama el siguiente script:

Sub Financiero

' VBScript
Set App = ActiveDocument.GetApplication
'Set newdoc = App.opendoc ("D:\Modelos BI\Financiero.qvw")
Set newdoc = App.Opendoc ("D:\Modelos BI\Financiero.qvw","","")
newdoc.Activate

End Sub

Este script me funciona muy bien desde Qv Enterprise, pero el problema se me presenta cuando abro el modelo base a traves de un portal web, pues cuando le doy clic al boton que abre el otro modelo, me sale un error "Fallo la comprobación de la macro. Se perdera la funcionalidad"

Creo entender que el cliente local no tiene la posibilidad de abrir el documento de qlikview desde la web.

Alguna sugerencia sobre como puedo resolver esto?

Gracias.

Not applicable

Macro

Edzamo, Para abrir un archivo qvw es mejor que uses la funcion de lanzar del boton.

En la pestaña de Lanzar, le seleccionas el ejecutable del IE.

En los parametros le indicas el File://c:.....etc del path del archivo que quieras que te abra.

Saludos

Not applicable

Macro

Sergio, estoy aplicando tu recomendación pero desde la web no me abren los archivos.

Estoy colocando en Aplicacion: C:\Program Files (x86)\Internet Explorer\iexplore.exe

En parametros: D:\Modelos BI\Financiero.qvw

Crees que me falte algo mas?, por que en el Qv Enterprise abre bien, pero desde Web le doy clic al boton y no hace nada.

Gracias por tu colaboracion.

Not applicable

Macro

Edzamo,

Tienes bien configurado el ISS?

Creo que tu problema se parece al post que te indico a segguir;

http://community.qlik.com/forums/p/17298/67873.aspx#67873

En el se especifica que los parametros serian

parameter = URL para la aplicacion en el server ( qvp://TUQVServer/Modelos BI\Financiero.qvw ).

Creo que tu solución esta en que la plicacion no encuentra el archivo.

Saludos

Not applicable

Macro

verifica lo siguiente

http://localhost/QvPlugin/opendoc.htm?document=nombre del archivo.qvw