Código de Power Builder - Función de PB para Des/Proteger Campos(Column)

Función de PB para Des/Proteger Campos(Column)gráfica de visualizaciones


Power Builder

estrellaestrellaestrellaestrellaestrella(3)
Publicado el 08 de Enero del 2003 por Victor Arreola
17.462 visualizaciones desde el 08 de Enero del 2003. Una media de 28 por semana
Función de PB para Des/Proteger Campos(Column) de una DW en una Window.

Versión 1
estrellaestrellaestrellaestrellaestrella(3)

Publicado el 08 de Enero del 2003gráfica de visualizaciones de la versión: Versión 1
17.464 visualizaciones desde el 08 de Enero del 2003. Una media de 28 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/**************** Funcion#02 Des/Proteger ****************************/
Comentario: No se ustedes, pero yo ya estaba hasta el copete de modificar
cada campo y tener que recordar cada nombre de los campos al codificar asi:
 
dw_captura.Modify('clave.protect=0') //Des/protege y permite capturar
dw_captura.Object.Nombre.Protect=1   //Protege y No permite capturar
dw_captura.Modify("importe.Protect='1~tIf(IsRowNew(),0,1)'") //el clasico
 
 
Funcion PB: Funcion de PB para Des/Proteger Campos(Column) de una DW en una
Window
            Des/Protege todas las columnas de una DW, pero no las indicadas
como excepciones
Retorna : Nada
Ejemplo : wf_proteccion(dw_captura,0,'clave,fechalta')
           //DESProtege todos los campos excepto CLAVE y FECHALTA
Autor   : Lic. Victor Arreola //:-)
Sintaxis: none wf_proteccion(DataWindow{Reference} dwo , Integer{Value}
ai_si1no0 , String{Value} as_excepciones)
**************************************************************************/
//Mas Ejemplos:
//wf_proteccion(dw_captura,1,'')   //Protege todos los campos
//wf_proteccion(dw_captura,0,'')   //DesProtege todos los campos
//wf_proteccion(dw_captura,0,'clave,fechalta') //DesProtege todos los campos excepto CLAVE y FECHALTA
//wf_proteccion(dw_captura,1,'nombre') //Protege todos los campos excepto NOMBRE
 
Sintaxis: none wf_proteccion(DataWindow{Reference} dwo , Integer{Value}
ai_si1no0 , String{Value} as_excepciones)
 
string ls_campo='',ls_proteger
long ll_nro_columnas, ii
 
as_excepciones=lower(as_excepciones)
 
ll_nro_columnas = long(dwo.Describe("DataWindow.Column.Count"))
 
if ai_si1no0=1 then // 1 = Si proteger
	for ii=1 to ll_nro_columnas
		ls_campo = lower(dwo.Describe("#"+ string(ii) +".Name"))
		if Pos(as_excepciones,ls_campo)=0 then //aqui puedes usar Match
			dwo.Modify(ls_campo+".protect=1")//Protege
		else
			dwo.Modify(ls_campo+".protect=0")//DesProtege
		end if
	next
else
	for ii=1 to ll_nro_columnas
		ls_campo = lower(dwo.Describe("#"+ string(ii) +".Name"))
		if Pos(as_excepciones,ls_campo)=0 then   //aqui puedes usar Match
			dwo.Modify(ls_campo+".protect=0")//DesProtege
		else
			dwo.Modify(ls_campo+".protect=1")//Protege
		end if
	next
end if
return
/*eof F2.Des/Proteger */



Comentarios sobre la versión: Versión 1 (3)

Percy
01 de Enero del 2008
estrellaestrellaestrellaestrellaestrella
Esta funcion funcia muy bien , y sobre todo es muy prático,,, buen dato
Responder
Fernando Quiñonez
16 de Marzo del 2009
estrellaestrellaestrellaestrellaestrella
Hola Victor,

Disculpa la molestia me podrias indicar si hay una herramienta en que pueda yo ver los archivos PBD y modificarlos ya que no tengo PowerBuilder.

muchas gracias

Saludos
Responder
wilpos
14 de Julio del 2012
estrellaestrellaestrellaestrellaestrella
MUY BUEN APORTE! 1000gracias
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s429