manual_regente_windows: regente_instalacion_windows.txt

File regente_instalacion_windows.txt, 17.1 KB (added by pablo, 14 years ago)
Line 
1* - Instalar Sistema Operativo con todos sus Drivers (La clave que le pongo al usuario administrador es bodrone33)
2
3* - Instalar El winRar
4
5* - Instalar el crack del xp http://192.168.1.10/soft/crackxp.rar chequear que no este el cd de xp en la lectora
6
7* - Instalar el Antivirus y actualizarlo
8
9* - Instalar el Apache (instalarlo como default)
10
11* - Copiar el C:\Archivos de programa\Apache Software Foundation\Apache2.2\conf\httpd.conf (remplazando el original) tener en cuenta si es para php4 o php5
12
13* - Si va con php5. Copiar la carpeta php5 en el c: tener en cuenta que para el php5 el ini va dentro de esa misma carpeta, y el httpd.conf hay que copiar el que dice httpd-php5 y despues cambiarle en nombre a httpd. El archivo c:\php5\php5ts.dll copiarlo en c:\windows\system32
14
15* - Si va con php4. Copiar la carpeta php que esta dentro del directorio php4 y el ini hay que copiarlo en c:\windows. El httpd.conf hay que copiar el que dice httpd-php4 y despues cambiarle en nombre a httpd.
16
17* - Crear la carpeta de proyectos c:\proyectos
18aca quede
19
20* - Copiar el Actualizar el la carpeta c:\proyectos
21
22* - Instalar el postgre (postgresql-8.2 abajo el 3), el usuario que uso es sistemas pass hwxn440, despues salen dos alertas. Cuando pregunta sobre el usuario del servicio poner SI y en la segunda poner q NO. Luego en Superuser name ingresar "sistemas" y la misma password. Todo lo q sigue por default.
23
24*- Insatalar el postgre 8.3.6.1, automaticamente crea la instalacion con el usuario postgre, y en la instalacion pide la clave del usuario postgres  (hwxn440) tener en cuenta que despues de terminar la instalacion le creamos el usuario sistemas con la misma clave desde el pgadmin. Durante la instalación pide los datos de la localizacion, seleccionamos "spanish, argentina".
25Este instalador tiene un bug, el cual no nos deja iniciar el servicio. Al usuario postgres no le da permisos a la carpeta de instalación para que pueda crear el posmaster.pid.
26Para esto seguimos estos pasos:
27        -> abrir el explorador de windows ir a la carpeta C:\Archivos de programa\PostgreSQL\8.3\
28        -> Ir al menú Herremientas / Opciones de Carpeta / Ver y destildar el último iten que dice "Usar uso compartido simple de archivo"
29        -> sobre la carpeta data clic derecho / propiedades, vamos a la solapa seguridad, y agregamos el usuario postgres, y le damos permisos de control total.
30
31
32* - En el Archivo de configuracion de postgre, cambiar los parametros de configuracion:
33
34En el archivo pg_hba agregar la linea
35host    all         all         192.168.0.0/16          md5
36debajo de IP ver 4
37
38En el archivo postgresql agregar la linea
39datestyle = 'iso, dmy'
40y comentar la linea datestyle = 'iso, mdy'
41agregar la linea
42statement_timeout = 240000
43debajo de la linea #statement_timeout = 0
44agregar la linea
45listen_addresses = '*'
46arriba de la linea #listen_addresses = 'localhost'
47
48NOTA:
49
50
51* - Instalar el Wincvs (wincvs_setup.exe) todo por default.
52
53* - Ejecutar el Actualizar.bat
54
55* - Crear la carpeta c:\logs
56
57* - Para restaurar un backup de regente conectarse a 192.168.1.18, contraseña hwxn440 y hacer de la db regentedar ya que se va actualizando continuamente.
58
59* - Instalar paquetes Office
60
61* - Instalar Acrobat
62
63* - Instalar el OpenVpn-gui(Los certificados que le creamos para el cliente son del server de bodrone.):
64
65* - Tener dos usuarios: administrador con una clave nuestra (bodrone33), como se necesita otro  usuario administrador para poder bajar el usuario regente a sin privilegios, creamos el usuario propietario con la misma pass de administrador. Un usuario regente, sin privilegios, sólo para abrir el explorer y ejecutar el regente local.
66
67* - Instalar una secion de logmein, para esto entrar en la pagina www.logmein.com, ingresar con el usuario soporte@bircherasociados.com.ar, contraseña, la misma del vnc. Despues ir a la parte de agregar una pc y bajar el free. Despues de instalarla, entrar desde otra maquina a la pagina y chequear que se puede entrar en la pc. Cuando pide el segundo usuario para entrar en la pc, es el usuario y la contraseña de la pc.
68
69* - Poner como sitio de confianza localhost, 127.0.0.1, www.bodroneonline.com.ar, 200.81.232.99. Para los sitios personalizados habilitar todas las funciones.
70
71
72********************************************************************************
73* - Seguir los pasos para instalar la impresora fiscal                         *
74********************************************************************************
75Además, este es el procedimiento para instalar impresora fiscal:
76
77Regente:Hasar:Instalacion - de Proyectos
78
79_*Instalación de Impresora Fiscal Hasar en un puesto Regente
80*_Tareas sobre la pc con Windows XP en la cual se va a conectar la
81impresora fiscal en el puerto serie com1._*
82*_
83
84   1. Descargar este archivo:
85      http://www.bircherasociados.com.ar/soft/hasar/winfis32.dll
86      y guardarlo en c:\windows\system32\ (o windows\system en xp)
87      (escribir esa url en el navegador y el sistema va a proponer
88      descargarlo).
89   2. Descargar este otro archivo:
90      http://www.bircherasociados.com.ar/soft/hasar/fiscal010724.ocx
91      y guardarlo en c:\windows\system32\  (o windows\system en xp)
92   3. Abrir una ventana de línea de comandos:
93      Para eso ir al boton Inicio, ejecutar, y luego escribir: cmd y "ENTER"
94      Si salió bien, tiene que aparecer una ventana negra con un cursor
95      titilando para escribir.
96   4. En esa ventana escribir:
97      cd \windows\system32 (o windows\system en xp) y "ENTER"
98      regsvr32 fiscal010724.ocx y "ENTER"
99      Si ejecuta bien el comando, puede salir un mensaje avisando eso
100      (si es en inglés puede decir "DllRegisterServer in
101      fiscal010724.ocx succeeded")
102      Cerrar la ventana de línea de comandos escribiendo "exit" y
103      presionando "ENTER".
104   5. Abrir la ventana de Regente.
105   6. Copiar del regente.ini de bodrone la parte de [comprobante]
106      En este caso dice esto
107        [comprobante]
108        maxlengthdescrcondventa=50
109        obsepredet="Recibi conforme el articulo que se detalla con todos sus accesorios"
110        pagoulprenoefectivo=nograbar ;predet:autorizar (envia a autorizar pero deja grabar)
111                           
112
113********************************************************************************
114
115
116* - Tomar el ini y cambiarle el valor que corresponde al area, de la tabla areas de regente tomar el numero correcto.
117dentro de [conexion] cambiar el idDb="18"
118Despues cambiar dentro de [general] el valor foro="http://www.bodroneonline.com.ar/regente/_tmp/forodemo.txt"
119
120* - Hacer una tarea programada para hacer la replicarion, dentro del directorio c:\proyectos\replicacion\tareas ponemos el bat suscriptor.bat. La tarea rogramada la ponemos que se ejecute cada 15 minutos durante 14 hs. Asi esta en esquina que es la primer sucursal que esta instalada.
121
122* - Para restaurar el backup de regente con los datos, seguir estos pasos.
123
124/*Ejecutar antes de restaurar.*/
125
126*- Crear el usuario "replicacion" contraseña "hwxn440"
127(en caso de olvidarse y correr la restauracion correr esto:
128GRANT ALL ON SCHEMA replicacion TO replicacion;
129GRANT ALL ON TABLE replicacion.rep_instrucciones TO replicacion;
130despues de restaurar)
131
132CREATE OR REPLACE FUNCTION comp_mon_cotiz_base(integer)
133  RETURNS double precision AS
134$BODY$--recibe id de comp de cliente y devuelve cotiz. de la moneda del comprobante
135select 1::float8$BODY$
136  LANGUAGE 'sql' IMMUTABLE;
137
138CREATE OR REPLACE FUNCTION art_comp_en_rd(integer, integer)
139  RETURNS integer AS
140$BODY$select 0::int4$BODY$
141  LANGUAGE 'sql' IMMUTABLE;
142
143CREATE OR REPLACE FUNCTION cant_cd_rd_por_comp(integer, integer)
144  RETURNS double precision AS
145'SELECT 0::float8'
146  LANGUAGE 'sql' IMMUTABLE;
147
148CREATE OR REPLACE FUNCTION cant_cd(integer, integer)
149  RETURNS double precision AS
150'SELECT 0::float8'
151  LANGUAGE 'sql' IMMUTABLE;
152
153CREATE OR REPLACE FUNCTION art_rd_en_comp(integer, integer)
154  RETURNS integer AS
155$BODY$select 0::int4$BODY$
156  LANGUAGE 'sql' STABLE;
157
158CREATE OR REPLACE FUNCTION art_rd_en_oc(integer, integer)
159  RETURNS integer AS
160$BODY$select 0::int4$BODY$
161  LANGUAGE 'sql' STABLE;
162
163CREATE OR REPLACE FUNCTION cant_ocd_rd_por_rd(integer, integer)
164  RETURNS double precision AS
165'SELECT 0::float8'
166  LANGUAGE 'sql' STABLE;
167
168CREATE OR REPLACE FUNCTION cant_rd(integer, integer)
169  RETURNS double precision AS
170'SELECT 0::float8'
171  LANGUAGE 'sql' STABLE;
172
173CREATE OR REPLACE FUNCTION cant_cd_rd_por_rd(integer, integer)
174  RETURNS double precision AS
175'SELECT 0::float8'
176  LANGUAGE 'sql' STABLE;
177
178/* Si el restore tiene nueve errores, está ok:WARNING: errors ignored on restore: 9
179Son las 9 funcs. que ya existen.
180
181ASÍ EL RESTORE DEMORA 6 MINUTOS*/
182
183Correr esto para agregar unos campos
184
185ALTER TABLE sujetos ADD COLUMN memo character varying(4096);
186DROP VIEW comp_v;
187CREATE OR REPLACE VIEW comp_v AS
188SELECT c.id_comp, c.letra, c.id_puesto, c.nro_comp, c.fecha, c.id_area,
189c.id_sujeto, c.obse, c.id_usuario, c.imp_total,
190c.obse_impre, c.id_moneda, c.estado_imp, c.fec_auto, c.obse_auto,
191c.id_usuario_auto, c.logcausas_auto, c.id_tipo_comp,
192c.pago, c.total_fiscal, c.id_vendedor, c.rem_fiscal, c.ult_modif,
193c.cotiz_base_comp, c.id_rubro_comp, c.nroz,
194c.id_comp_terceros, c.id_cp, ((COALESCE(ct.tc, ''::character
195varying)::text || COALESCE(c.letra, ''::character varying)::text) ||
196'-'::text)
197|| compdes(c.id_puesto, c.nro_comp)::text AS nro, m.moneda, m.signo,
198s.sujeto, a.area, s.doc AS cuit, s.direccion, s.memo, ci.condicion,
199ci.cod_cf AS id_cond_cf, ci.completra, ci.ci, l.localidad,
200sdt.tipo_doc_cf, ct.signo_comp, ct.tipo_comp, ct.tc, ct.esventa,
201cr.rubro_comp,
202s.cod_postal, p.provincia, a.id_tipo_comp_simple, cts.tipo_comp AS
203tipo_comp_simple, cp.descripcion AS descr_cp
204  FROM comp c
205  LEFT JOIN sujetos s ON c.id_sujeto = s.id_sujeto
206  LEFT JOIN condiciones_iva ci ON s.id_condicion = ci.id_condicion
207  LEFT JOIN localidades l ON s.cod_postal::text = l.id_localidad::text
208  LEFT JOIN provincias p ON l.id_provincia = p.id_provincia
209  LEFT JOIN areas a ON c.id_area = a.id_area
210  LEFT JOIN monedas m ON c.id_moneda = m.id_moneda
211  LEFT JOIN sujetos_doc_tipos sdt ON s.id_tipo_doc = sdt.id_tipo_doc
212  LEFT JOIN comp_tipos ct ON c.id_tipo_comp = ct.id_tipo_comp
213  LEFT JOIN comp_rubros cr ON c.id_rubro_comp = cr.id_rubro_comp
214  LEFT JOIN comp_tipos cts ON a.id_tipo_comp_simple = cts.id_tipo_comp
215  LEFT JOIN centros_productivos cp ON c.id_cp = cp.id_cp;
216
217
218
219
220
221/*Ejecutar después de restaurar*/
222CREATE OR REPLACE FUNCTION comp_mon_cotiz_base(integer)
223  RETURNS double precision AS
224$BODY$--recibe id de comp de cliente y devuelve cotiz. de la moneda del comprobante
225select cotiz_base_comp from comp where id_comp = $1$BODY$
226  LANGUAGE 'sql' STABLE;
227
228
229CREATE OR REPLACE FUNCTION art_comp_en_rd(integer, integer)
230  RETURNS integer AS
231$BODY$select distinct rd.id_articulo from cd_rd
232left join remitos_detalles rd on cd_rd.id_rem = rd.id_remito and cd_rd.id_rem_det = rd.id_det
233where cd_rd.id_comp = $1 and cd_rd.id_comp_det = $2$BODY$
234  LANGUAGE 'sql' STABLE;
235COMMENT ON FUNCTION art_comp_en_rd(integer, integer) IS 'Dada una fila de comprobante devuelve los arts de los remitos det. asociados. Deberia ser un solo art. y el mismo que el del detalle del comp';
236
237
238CREATE OR REPLACE FUNCTION cant_cd_rd_por_comp(integer, integer)
239  RETURNS double precision AS
240'SELECT coalesce(sum(coalesce(cant,0)),0) FROM cd_rd WHERE id_comp = $1 AND id_comp_det = $2'
241  LANGUAGE 'sql' STABLE;
242
243CREATE OR REPLACE FUNCTION cant_cd(integer, integer)
244  RETURNS double precision AS
245'SELECT coalesce(cant,0) FROM comp_det WHERE id_comp = $1 AND id_det = $2'
246  LANGUAGE 'sql' STABLE;
247
248CREATE OR REPLACE FUNCTION art_rd_en_comp(integer, integer)
249  RETURNS integer AS
250$BODY$select distinct cd.id_articulo from cd_rd
251   left join comp_det cd on cd_rd.id_comp = cd.id_comp and cd_rd.id_comp_det = cd.id_det
252   where cd_rd.id_rem = $1 and cd_rd.id_rem_det = $2$BODY$
253  LANGUAGE 'sql' STABLE;
254COMMENT ON FUNCTION art_rd_en_comp(integer, integer) IS 'Dada una fila de remito devuelve los arts de comp_det asociados. Deberia ser un solo art. y el mismo que el del detalle del remito';
255
256CREATE OR REPLACE FUNCTION art_rd_en_oc(integer, integer)
257  RETURNS integer AS
258$BODY$select distinct ocd.id_articulo from ocd_rd
259left join ordenes_compra_det ocd on ocd_rd.id_oc = ocd.id_oc and ocd_rd.id_oc_det = ocd.id_det
260where ocd_rd.id_rem = $1 and ocd_rd.id_rem_det = $2$BODY$
261  LANGUAGE 'sql' STABLE;
262COMMENT ON FUNCTION art_rd_en_oc(integer, integer) IS 'Dada una fila de remito devuelve los arts de las ordenes_compra_det asociados. Deberia ser un solo art. y el mismo que el del detalle del remito';
263
264CREATE OR REPLACE FUNCTION cant_ocd_rd_por_rd(integer, integer)
265  RETURNS double precision AS
266'SELECT coalesce(sum(coalesce(cant,0)),0) FROM ocd_rd WHERE id_rem = $1 AND id_rem_det = $2'
267  LANGUAGE 'sql' STABLE;
268
269CREATE OR REPLACE FUNCTION cant_rd(integer, integer)
270  RETURNS double precision AS
271'SELECT coalesce(cant,0) FROM remitos_detalles WHERE id_remito = $1 and id_det = $2'
272  LANGUAGE 'sql' STABLE;
273
274CREATE OR REPLACE FUNCTION cant_cd_rd_por_rd(integer, integer)
275  RETURNS double precision AS
276'SELECT coalesce(sum(coalesce(cant,0)),0) FROM cd_rd WHERE id_rem = $1 AND id_rem_det = $2'
277  LANGUAGE 'sql' STABLE;
278
279
280
281
282DROP VIEW sujetos_v;
283CREATE OR REPLACE VIEW sujetos_v AS
284SELECT s.*, s.doc AS cuit, ci.condicion, ci.completra,
285ci.id_tipo_doc_pred, t.transporte, td.tipo_doc, l.localidad,
286le.localidad AS localidad_efec, rgt.afip_norm, l.id_provincia,
287p.provincia, ci.id_condicion_tercero, td.id_tipo_doc_tercero,
288lt.sujeto AS lug_tra, pl.listap AS listap_cli, ec.estado_civil,
289pr.profesion, c.calle AS dir_calle, pa.pais AS nacionalidad, ci.ci,
290lpad(s.id_sujeto::text, 13, 0::text) AS cod_barras
291  FROM sujetos s
292  LEFT JOIN localidades l ON s.cod_postal::text = l.id_localidad::text
293  LEFT JOIN localidades le ON s.cod_postal_efec::text = le.id_localidad::text
294  LEFT JOIN provincias p ON l.id_provincia = p.id_provincia
295  LEFT JOIN transporte t ON s.id_transporte = t.id_transporte
296  LEFT JOIN condiciones_iva ci ON s.id_condicion = ci.id_condicion
297  LEFT JOIN ret_gan_tipos rgt ON rgt.id_rg = s.id_rg
298  LEFT JOIN sujetos_doc_tipos td ON s.id_tipo_doc = td.id_tipo_doc
299  LEFT JOIN sujetos lt ON s.id_lug_tra = lt.id_sujeto
300  LEFT JOIN precios_listas pl ON s.id_listap_cli = pl.id_listap
301  LEFT JOIN estados_civiles ec ON s.id_estado_civil = ec.id_estado_civil
302  LEFT JOIN profesiones pr ON s.id_profesion = pr.id_profesion
303  LEFT JOIN calles c ON s.id_calle = c.id_calle
304  LEFT JOIN paises pa ON s.id_nacionalidad = pa.id_pais;
305
306
307
308
309CREATE OR REPLACE VIEW comp_combo_v AS
310 SELECT NULL::integer AS id_comp, NULL::integer AS id_det, NULL::integer AS
311id_listap, NULL::integer AS id_articulo, NULL::character varying AS
312descripcion, NULL::character varying AS descrart, NULL::numeric AS precio,
313NULL::numeric AS cant, NULL::numeric AS p_unitario, NULL::numeric AS costo,
314NULL::numeric AS iva, NULL::numeric AS impint, NULL::double precision AS
315cant_en_combo, NULL::double precision AS subtotal;
316COMMENT ON VIEW comp_combo_v IS 'Tabla que se usa para enganiar al motor de
317regente para que nos cree el atributo info en el listado de componentes, es
318necesario para cuando se usan los combos y la habilidad para detallar las
319partes de los mismos';
320CREATE OR REPLACE FUNCTION art_cant_en_combo(integer, integer) RETURNS
321double precision AS
322$BODY$--$1 idarticulo, $2 idcombo Devuelve la cantidad del art id_articulo($1) que participa en el combo $2
323select cant from articulos_combos where id_articulo = $1 and
324id_art_combo =$2;$BODY$
325  LANGUAGE 'sql' STABLE;
326
327
328
329ALTER TABLE sujetos ADD COLUMN memo character varying(4096);
330DROP VIEW comp_v;
331CREATE OR REPLACE VIEW comp_v AS
332SELECT c.id_comp, c.letra, c.id_puesto, c.nro_comp, c.fecha, c.id_area,
333c.id_sujeto, c.obse, c.id_usuario, c.imp_total,
334c.obse_impre, c.id_moneda, c.estado_imp, c.fec_auto, c.obse_auto,
335c.id_usuario_auto, c.logcausas_auto, c.id_tipo_comp,
336c.pago, c.total_fiscal, c.id_vendedor, c.rem_fiscal, c.ult_modif,
337c.cotiz_base_comp, c.id_rubro_comp, c.nroz,
338c.id_comp_terceros, c.id_cp, ((COALESCE(ct.tc, ''::character
339varying)::text || COALESCE(c.letra, ''::character varying)::text) ||
340'-'::text)
341|| compdes(c.id_puesto, c.nro_comp)::text AS nro, m.moneda, m.signo,
342s.sujeto, a.area, s.doc AS cuit, s.direccion, s.memo, ci.condicion,
343ci.cod_cf AS id_cond_cf, ci.completra, ci.ci, l.localidad,
344sdt.tipo_doc_cf, ct.signo_comp, ct.tipo_comp, ct.tc, ct.esventa,
345cr.rubro_comp,
346s.cod_postal, p.provincia, a.id_tipo_comp_simple, cts.tipo_comp AS
347tipo_comp_simple, cp.descripcion AS descr_cp
348 FROM comp c
349 LEFT JOIN sujetos s ON c.id_sujeto = s.id_sujeto
350 LEFT JOIN condiciones_iva ci ON s.id_condicion = ci.id_condicion
351 LEFT JOIN localidades l ON s.cod_postal::text = l.id_localidad::text
352 LEFT JOIN provincias p ON l.id_provincia = p.id_provincia
353 LEFT JOIN areas a ON c.id_area = a.id_area
354 LEFT JOIN monedas m ON c.id_moneda = m.id_moneda
355 LEFT JOIN sujetos_doc_tipos sdt ON s.id_tipo_doc = sdt.id_tipo_doc
356 LEFT JOIN comp_tipos ct ON c.id_tipo_comp = ct.id_tipo_comp
357 LEFT JOIN comp_rubros cr ON c.id_rubro_comp = cr.id_rubro_comp
358 LEFT JOIN comp_tipos cts ON a.id_tipo_comp_simple = cts.id_tipo_comp
359 LEFT JOIN centros_productivos cp ON c.id_cp = cp.id_cp;
360
361
362