|
Hola,
es que no son funciones especialmente
personalizadas... son las mismas funciones que genera el coop
(xxx_GetDescription por ejemplo) solo que a veces se les hacen algunas
personalizaciones. Creo que ya no tendría por qué volver a re-crear las
funciones que ya están funcionando bien...
que sólo re-cree aquellas funciones cuyos
procedimientos almacenados los estoy re-generando... no les parece? y también
aquellas funciones que se relacionan indirectamente a través de claves foráneas
a las tablas marcadas en el coop.
Otra fallita que por allí le encontré es que el
campo que recupera si es varchar (por ejemplo)... le pone varchar(100) y no
siempre es así. Creo que debería devolver un dato con la misma longitud del
campo que recupera... dado que a veces corta el string que
devuelve.
ALTER FUNCTION
[dbo].[xxx_GetDescription](@priorityid int)
RETURNS varchar(100)
AS
BEGIN
RETURN (SELECT ISNULL(CONVERT(varchar(100), [title]), '') ---debiera ser
VARCHAR(150)
FROM [dbo].[xxx]
WHERE [priorityid] = @priorityid
)
END
Lo que si he notado es que las funciones creadas a
mano por nosotros no las toca para nada... y eso está bien.
Saludos cordiales.
Segundo Serrano P.
----- Original Message -----
Sent: Wednesday, February 24, 2010 9:36
AM
Subject: Re: [cooperatorframework] se
recrean nuevamente las funciones
leyendo de nuevo el mensaje me di cuenta que tenes razón, se
refiere a las funciones personalizadas en la base de datos.
Una posible
solución seria que toda función personalizada tenga un nombre distinto a las
que genera coop y dichas funciones tenerlas dentro de un script de resguardo
entonces en el caso que necesite modificar el dominio y volver a generar
código que recupere las funciones ejecutando el script
Ing.
Fabian Koliren
Blog: http://www.informaticaunlam.com.ar/ LinkedIn:
http://ar.linkedin.com/in/fabiankoliren Mensseger:
fabian_koliren@hotmail.com Skype:
fabiankoliren
El 24 de febrero de 2010 10:58, Daniel Calvin <daniel.calvin@gmail.com>
escribió:
Buenos
días Fabian
Creo que segundo se refería a las funciones que coop crea
en la base de datos, ahora me haces dudar.
Daniel
El 24 de febrero de 2010 10:22, Fabian Koliren <fabiankoliren@gmail.com> escribió:
Buenos Días Segundo, Para escribir código que no se
pierda tenes que escribirlo en los archivos que no se encuentran en las
carpetas auto, es decir, todo lo que esta dentro de las carpetas auto es
el código generado por cooperator y no debes programar ahi ya que si
volves a generar código perdes lo que programaste. Aprovechando la
funcionalidad de partial class podes programar en los archivos que no
estan dentro de la carpeta auto y luego al compilar se unirá todo como si
estuviera en un mismo archivo. Espero que te
sirva Saludos Ing. Fabian Koliren Blog: http://www.informaticaunlam.com.ar/LinkedIn: http://ar.linkedin.com/in/fabiankolirenMensseger: fabian_koliren@hotmail.comSkype:
fabiankoliren
Qué tal?
quería saber si estoy olvidando algo o es
un bug o así debe ser:
si creo una nueva tabla en mi base de datos
y uso cooperator para generarle sus procedimientos almacenados y
funciones (sólo a esa tabla)....
por qué todas las funciones previamente
creadas en la base de datos (usando cooperator) se destruyen y crean
nuevamente?
Yo creo que no debería ser así, porque
algunas de las funciones se suelen modificar y entonces se pierden esas
personalizaciones...
Estoy de acuerdo que se deben recrear
nuevamente las funciones para las tablas marcadas en el entorno de
cooperator, pero no tiene por qué tocar las funciones de las tablas
desmarcadas.
Bueno, espero sus comentarios.
Saludos,
Segundo Serrano P.
|