Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Progama para varias empresas (https://www.clubdelphi.com/foros/showthread.php?t=30411)

halcon_rojo 05-04-2006 18:07:31

Progama para varias empresas
 
Hola amigos, quisiera que me den un consejo para realizar lo siguiente: tengo un programita que permite el registro de datos (facturas en realidad) de una deternimada empresa. Lo que pasa ahora que hay clientes que manejan varias empresas en la misma computadora y tuve que realizar copias de mi programa según el numero de empresas que manejan, claro esta en carpetas distintas y para que el usuario reconozca la empresa que va a manejar puse iconos de acceso directo en el escritorio. Pero bueno lo que quisiera es hacer que mi perograma, o un subprograma, sea el encargado de preguntarle con que empresa vaa atrabajar el usuario y automaticamente selecionarla, se me ocurrio varias formas pero no se si alguien ya tiene alguna que le funcione bien y sin mucho cambio al codigo de mi programa.Si de algo sirve mis tablas las tengo en un directorio especifico y el ejecutable en otro (un nivel abajo). gracias por lo que puedan sugerirme

dec 05-04-2006 18:16:36

Hola,

No sé. Según lo veo, a bote pronto, se me ocurre que crearas un nuevo programa, cuya misión fuera, precisamente, mostrar al usuario un menú (botones, imágenes, qué sé yo, un menú en abstracto) que le permita elegir "la empresa" con la que quiera trabajar.

A continuación y, según la elección del usuario, dicho programa se encargaría de ejecutar lo necesario: el programa correspondiente a la empresa X, por poner un caso. ¿No es aparentemente algo sencillo como lo dicho lo que se precisa? Entonces, ¿me estoy perdiendo algo? No sería extraño. ;)

Lepe 05-04-2006 18:35:02

Supongo que usaras tablas para guardar las facturas y demás. Sería cuestion de añadir una tabla más tablaEmpresa, y añadir el soporte a tu programa para que elija la empresa.

Si solo hay una empresa en el sistema, pues que no pregunte nada y que funcione como hasta ahora. Si hay más empresas, pues que pregunte.

Así solo tendrás un programa, pero dando soporte de varias empresas simultaneas.

En un programa que hice, en la ventana de factura, añadí un DBlookUpCombo a la tabla empresas, y en la cabecera de la factura se añade un campo con el número de la empresa. En la tabla Empresas, añadía el logo de la empresa para las facturas, dirección etc.

Esto supone modificar el programa para todos tus clientes, pero creo que vale la pena.

Saludos

marcoszorrilla 05-04-2006 20:01:08

No dices con qué motor y tablas trabajas, pero si fuera con Paradox + BDE una opción fácil sería la creación de un alias, que cargará la dirección a la que apunta de forma dinámica, es decir despues de que el usuario haya elegido la empresa, de esta manera tendríamos; Unas tablas comunes en una carpeta y luego las particulares de cada empresa en una carpeta reservada para dicha empresa.

La misma idea podría aplicarse a otros sistemas, más o menos en la línea que ya te han indicado David y Lepe.

Un Saludo.

Viky 06-04-2006 13:16:42

Cita:

Empezado por marcoszorrilla
No dices con qué motor y tablas trabajas, pero si fuera con Paradox + BDE una opción fácil sería la creación de un alias, que cargará la dirección a la que apunta de forma dinámica, es decir despues de que el usuario haya elegido la empresa, de esta manera tendríamos; Unas tablas comunes en una carpeta y luego las particulares de cada empresa en una carpeta reservada para dicha empresa.

La misma idea podría aplicarse a otros sistemas, más o menos en la línea que ya te han indicado David y Lepe.

Un Saludo.


Cómo configuro dinámicamtente el BDE??, me podrias explicar con mas detalle la creación del alias que mencionaste???
Muchas Gracias
Viky

pepon386 06-04-2006 13:28:28

Prueba lo siguiente:
Código Delphi [-]
  if not Session.IsAlias(ALIAS_APP) then with Session do
  begin
    ConfigMode := cmSession;
    try
      AddStandardAlias(ALIAS_APP, Ruta, 'PARADOX');
    finally
      ConfigMode := cmAll;
    end;
  end;
  Database.AliasName := ALIAS_APP;
  Database.TransIsolation := tiDirtyRead;
  Database.Open;

Viky 06-04-2006 13:43:47

Cómo configurar dinámicamente el BDE??
 
Hola a todos, les paso a detallar mi problemita: Necesito configurar dinámicamente el BDE desde una aplicación en delphi 6.
Desde la aplicación se elegirá la empresa con cuál trabajar, las bases de datos de las distintas empresas, están ubicadas en distintas carpetas, por ello es necesario configurar dinámicamente el BDE, para que apunte a distintas rutas según la empresa elegida. Las tablas de la BD están en Paradox.

marcoszorrilla 06-04-2006 15:13:27

Código Delphi [-]
with DataModuleDatos.DbMicalluch do
begin
Params.Clear;
Params.Add('PATH = ' + Path);
Params.Add('DEFAULT DRIVER = PARADOX');
Params.Add('ENABLE BCD = FALSE');
end;

Si utilizas un componente TDataBase, puedes variar el lugar en donde están los datos es decir una u otra empresa de la manera que ves.

Un Saludo.


La franja horaria es GMT +2. Ahora son las 12:50:04.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi