PREGUNTAS CONTESTADAS - Otros Lenguajes

 Hay un total de 398 Preguntas.<<  >> 

    Pregunta:  61888 - COBOL CON MANEJADOR DE BASES DE DATOS
Autor:  claudia stella arenas cardenas
Hace 12 años programe muchas aplicaciones en cobol, desearia saber si el cobol ha avanzado en el sentido de poder trabajar con manejador de bases de datos y cual es el cobol.
  Respuesta:  Juanto Gómez Gutiérrez
Puedes informarte sobre pro-cobol.
Utilizan instrucciones del tipo
EXEC SQL
Select * from clientes
END-EXEC

Visual Cobol de Microfocus lo permite.
Acucobol creo que también.

Una pista ...

Saludos

    Pregunta:  61908 - HACER PERMUTACIONES EN GAMBAS
Autor:  Nisser Joan Olivo Arias
Saludos a todos los programadores... Amigos tengo un problemilla estoy realizando una aplicacion para loterias y estoy trabado en como realizar permutaciones he estado haciendo algo como esto pero cuando introduzco mas de 3 caracteres no me lo realiza por que creo que debo usar un for next pero no tengo idea de como hacer la estructura les dejo lo que he realizado para que alguno de Ustedes me pueda ayudar, gracias de antemano...

PUBLIC SUB _new()

END

PUBLIC SUB Form_Open()
ME.Center
END

PUBLIC SUB Button1_Click()
DIM a AS String
DIM b AS String
DIM e AS String
DIM c AS String

c = Len(TextBox1.Text)
IF c < "8" THEN
a = Mid$(TextBox1.Text, 2, -1)
b = Left$(TextBox1.Text, 1)
e = Right$(TextBox1.Text, 1)
TextBox3.Text = a & b & e
TextBox4.Text = b & e & a
TextBox5.Text = e & b & a
TextBox6.Text = b & a & e
TextBox7.Text = a & e & b
TextBox8.Text = e & a & b
TextBox2.Text = c
ELSE
Message.Error("Solo acepta 7 digitos")
TextBox1.Clear
ENDIF

END
  Respuesta:  Miguel Hernandez
Revisa en la seccion de gambas de codigo fuente, alli esta un ejemplo

    Pregunta:  62237 - FUNCION DE CONVERSION DE UNA PALABRA DOBLE A COMA FLOTANTE
Autor:  Ariel Abrahan Hernan
Estimados necesito encontrar la forma de convertir una palabra doble a coma flotante, para implementarlo en una RTU que se programa en lenguage lader y utiliza registros de memoria en 16bits. Desde ya muchas gracias a todos.-
  Respuesta:  Francisco Rogles
El formato estandar de un numero en coma flotante de 32 bits (norma IEEE 754) utiliza 23 bits para la mantisa, 8 para el exponente y 1 para el signo, corresponde a la estructura siguiente:

struct floatFormat
{
unsigned mantisa : 23;
unsigned exponente : 8;
unsigned signo : 1;
}
Los bits 0 a 22 contienen la mantisa (parte fraccionaria), de 23 bits, que llamaremos f, siendo el bit 0 el menos significativo y el bit 22 el más significativo. Los bits 23 a 30 contienen el exponente e, con exceso 127 (es decir, al valor obtenido con estos 8 bits hay que restarle 127). El bit 23 es el menos significativo, y el bit 30 el más significativo. El bit 31 corresponde al signo (0=positivo, 1=negativo). Un número X sería:
X = (-1)s * 2^(e-127) * 1.f
Los números así almacenados utilizan lo que se denomina mantisa normalizada, es decir, que el exponente queda de tal modo que la parte entera siempre sea un 1, el cual NO se guarda, con lo que se gana un bit.

El formato de coma flotante de 64 bits es similar, utiliza 52 bits de mantisa, 11 para exponente y 1 para signo. Funciona igual que el de 32 bits, excepto que el exceso del exponente es 1023. Un número X sería:
X = (-1)s * 2^(e-1023) * 1.f
Evidentemente, el formato de 64 bits tiene más precisión y alcanza un rango superior, a costa del espacio de almacenamiento.

Espero que, a partir de aquí, no te será difícil la conversión.

Saludos,
PACO

    Pregunta:  63001 - TRANSFERENCIA ARCHIVOS DEL AS400 A TXT
Autor:  Evelyn Ortiz
Estoy realizando una transferencia de un archivo de Base de datos desde el AS400 a txt en la PC. Realizo la transferencia tanto por Client Access como por FTP y el resultado es el mismo. En el archivo de base de datos tengo unos campos que tienen letras que están acentuadas, y en el archivo txt al realizar la transferencia se cambia el contenido de la letra. Por ejemplo, si el campo tiene el valor
Póliza de seguro de vehículo lo sustituye por P¢liza de seguro de veh¡culo

Estos caracteres no son permitido en el software que tengo que cargar el archivo txt.

Como podría resolver este problema?

Saludos.
  Respuesta:  Juan Iglesias
Desde la version 5.3 de iSeries Access puede transferir a tipo de archivo UNICODE (igual que eliges TEXTO, BIFF8(EXCELL), etc) y con esto resuelves el problema.
Saludos.
  Respuesta:  Horacio Alberto Escalada
Hola Evelyn..
Mientras busco una respuesta mejor, podrias hacer el transfer desde Excel que es mas rapido.

Saludos

Horacio

    Pregunta:  63213 - PROBLEMA DE COHERENCIA EN LA BASE DE DATOS
Autor:  Linney Perez Cornelio
Buenas tardes, al entrar a un módulo del sistema manda el siguiente mensaje: Se ha detectado un posible problema de coherencia de la base de datos en la base de datos ' X' Deben ejecutarse DBCC CHECKDB y DBCC CHECKCATALOG en la base de datos ' , ya investigue y encontre el comando
DBCC CHECKDB ( 'TCADBASA' ), me arroja el mensaje de error, pero que mas tengo que ejecutar para corregirlo. Gracias por su ayuda.
  Respuesta:  Linney Pérez Cornelio
Hola, para corregir este problema corri el comando DBCC CHECKDB, al correrlo al fina me manda el mensaje de que la base de datos tenia inconsistencias y me marcaba que tablas, investigando encontre que el comando DBCC CHECKDB sirve para revisar lo siguiente:
En cada tabla de la base de datos, DBCC CHECKDB comprueba que:

•Los índices y las páginas de datos están correctamente vinculados.
•Los índices se encuentran en el orden correcto.
•Los punteros son coherentes.
•Los datos de cada página son razonables.
•Los desplazamientos de página son razonables.

Entonces me fui primero a buscar un query que arreglara los índices, corri el siguiente query que arreglo mi problema, se corre tal cuál no hay que moverle nada:
--Comando para ver que tablas necesitan reindexar e investigar por que esta mostrando eso

DBCC CHECKDB

--query para Reindexar los indices.

USE DatabaseName Enter the name of the database you want to reindex

DECLARE @TableName
varchar(255)
DECLARE TableCursor
CURSOR FOR SELECT table_name FROM information_schema.tables
WHERE table_type = `base
table` OPEN TableCursor
FETCH NEXT FROM TableCursor
INTO @TableName
WHILE @@FETCH_STATUS = 0
BEGIN DBCC DBREINDEX(@TableName,` `,90)
FETCH NEXT FROM TableCursor
INTO @TableName END CLOSE TableCursor
DEALLOCATE TableCursor

En link donde encontre este query y soluciono mi problema es:http://www.sql-server-performance.com/tips/rebuilding_indexes_p1.aspx

Espero que si a alguien mas le pasa, esto le pueda ayudar. Saludos.
  Respuesta:  Linney Perez Cornelio
Tenemos windows server 2003 y Sql 2000.

    Pregunta:  63507 - PUNTOS DECIMALES EN QUERYS EN AS400
Autor:  Juan Artacho Arjona
Hola, a ver si alguien me puede iluminar. Trabajo normalmente con dos AS400. Al hacer un query en uno de ellos, los datos numéricos se editan como es normal, con punto para millares y millones y con coma para la parte decimal, sin embargo el mismo query en el otro ordenador se edita con coma para miles y millones y con punto para la parte decimal, y no sé como cambiar esto último.
  Respuesta:  Horacio Escalada
Hola Juan..
Aca te paso la respuesta..

Con el comando CHGMSGD hay que cambiar el mensaje CPX2D06 del archivo de mensajes QCPFMSG y el mensaje QRX3002 del archivo de mensajes QQRYMSG para que queden con los siguientes valores:

ID mensaje . . . . . . . . . : CPX2D06
Archivo mensajes . . . . . . : QCPFMSG
Biblioteca . . . . . . . . : QSYS

Mensaje . . . . : 42$11 - 2$ 1111

ID mensaje . . . . . . . . . : QRX3002
Archivo mensajes . . . . . . : QQRYMSG
Biblioteca . . . . . . . . : QSYS

Mensaje . . . . : A D OR AND , . O E F J *ALL *NONE Y N L T Z V
G 1 2 3 5 L F

Un abrazo,

    Pregunta:  63949 - ORALCE NOMBRE DE COLUMNAS Y DATOS
Autor:  ROBERTO MEJIA
TENGO UNA CONSULTA:
DATOS DE LA ESTRUCTURA DE LA TABLA
-------------------------------------------------------
Column_id Column_name Data_type
-------------------------------------------------------
1 Nombre char
2 Apellido char
3 Direccion char
4 Telefono char
5 Fecha date
DATOS DE LA TABLA
------------------------------------------------------------------------
Nombre Apellido Direccion Telefono Fecha
------------------------------------------------------------------------
Juan Perez San Salvador 2610-2121 01/01/2010
La consulta es de que manera puedo realizar un trigger que pueda concatenar en un solo string (para Insertar/Actualizar) en el cual
me arme los datos dinamicamente el nombre del campo+el contenido del campo asi:
Nombre: Juan Apellido: Perez Direccion: San Salvador Telefono: 2610-2121 Fecha:01/01/2010

Todo esto para poderlo enviar a una tabla de traza de auditoria, tome un ejemplo pero no me funciona:
CREATE OR REPLACE TRIGGER "ESQUEMA_PRUEBA"."CREACION" BEFORE
INSERT ON "TABLA_PRUEBA" FOR EACH ROW
declare
n_traza number;
oldval varchar(2000);
newval varchar(1000);
begin
SELECT sysdate INTO :new.fecha_creacion FROM dual;
select SEC_AUDITORIA.nextval into n_traza from dual;
for row in (SELECT column_name from user_tab_columns where table_name='TABLA_PRUEBA') loop
execute immediate 'select :old.'||row.column_name||' from dual' into oldval;
execute immediate 'select :new.'||row.column_name||' from dual' into newval;
end loop;
insert into traza_auditoria (id_traza,usuario,fecha,operacion,datos)
values(99,:new.usuario_creacion,:new.fecha_creacion,'INSERCIÓN',newval);
end;
Gracias
  Respuesta:  Lester
Hola, prueba asi:

CREATE OR REPLACE TRIGGER NOMBRE_TRIGGER Before INSERT OR UPDATE ON TABLA FOR EACH ROW
BEGIN
IF INSERTING THEN
INSERT INTO TABLA(LA TABLA DEBE TENER UN SOLO CAMPO VARCHAR2(1000)) VALUES('Nombre:'||' '||:NEW.NOMBRE||' '||
'Apellido:'||' '||:NEW.APELLIDO||' '||
'Direccion:'||' '||:NEW.DIRECCION||' '||
'Telefono:'||' '||:NEW.TELEFONO||' '||
'Fcha:'||' '||SYSDATE);
ELSE
INSERT INTO TABLA(LA TABLA DEBE TENER UN SOLO CAMPO VARCHAR2(1000)) VALUES('Nombre:'||' '||:OLD.NOMBRE||' '||
'Apellido:'||' '||:OLD.APELLIDO||' '||
'Direccion:'||' '||:OLD.DIRECCION||' '||
'Telefono:'||' '||:OLD.TELEFONO||' '||
'Fcha:'||' '||SYSDATE);
END IF;
END;
/

    Pregunta:  63962 - SE REALIZO DBCC REINDEX Y EL LOG SE FUE A 100GB EN SQL 2000
Autor:  Linney Pérez Cornelio
Buenos días, el dia de ayer corrieron un dbcc reindex y el log de transacciones se fue a mas de 100GB, no entendemos porque, ya que tenemos un plan de mantenimiento, de la siguiente manera: Completo, Diferencial y del Log, lo tenemos asi por que la actualización de datos es cada 5 minutos en la empresa, y el volumen de datos que llega es bastante.

Se puso ese modo de recuperación por que aparte una vez que realiza el respaldo, libera el espacio del LOg, por eso no entiendo que pudo hacer que el Log se dispara de esa manera y ahora como liberar todo ese espacio.

Manejamos SQL 2000. De antemano gracias por la ayuda.
  Respuesta:  Linney Pérez Cornelio
Buenos días, leyendo encontré que al correr el DBCC Reindex debo cambiar mi modo de recuperación a sencillo, de lo contrario es normal que el Log crezca de manera considerable, con esto ya se porque crecio mi Log, ahora el detalle es ¿Cómo reducirlo? ¿Lo puedo reducir en tiempo real? y ¿En que me puede afectar?.

Gracias y Saludos.

    Pregunta:  63981 - COPIAR CONTENIDO DE 1 DIRECTORIO EN 1 TXT
Autor:  Alba Gallardo
Hola,

estoy realizando un programa en MATLAB.

Necesito almacenar, en un fichero de texto, el contenido de un directorio. Es decir, en un directorio, cuya ruta tengo almacenada en una variable 'dir'. En ese directorio, tengo distintos archivos... Lo que necesito es, almacenar los nombres de esos archivos en un fichero de texto que tendré que crear.

Tengo entendido que en Linux, se puede hacer con ls>'documento.txt', pero esto en matLab no funciona.

Agradezco mucho vuestra ayuda, muchas gracias!!
  Respuesta:  Capitan Kirk
En MS-DOS, o en una consola Windows, el comando sería:

dir > documento.txt

Desde MATLAB, tendrías que ejecutar este comando como una llamada al sistema, algo parecido a

SYSTEM("dir > documento.txt")

No utilizo MATLAB, pero supongo que debe haber alguna manera de llamar directamente a funciones del sistema operativo.

Espero que te sirva de ayuda. Saludos,

    Pregunta:  64044 - DUDAS AL TRATAR DE CREAR UN JOB EN SQL 2005 ENTERPRISE
Autor:  Linney Pérez Cornelio
Buenas tardes, amigos de la WEB, les expongo mi duda.

En SQL 2000 cuando programaba mi completo, Diferencial y Log , en la misma ventana me dejaba colocarle los horarios en los que queria se ejecutaran, ahora estoy en un sistema con SQL 2005, entro a Tareas y selecciono Copia de Seguridad, pero no veo donde colocarle el horario en el que quiero se ejecute, leyendo encontre que puedo programarlo por windows...pero tengo la duda si realmente no puedo hacerlo en SQL Management y si haciendo con windows los respaldosm completos, Logs y Diferenciales se van a ligar correctamente, en caso de necesitarlos.

De antemano gracias por la ayuda.
  Respuesta:  Linney Pérez Cornelio
Buenos dias, ya encontré como solucionar mi problema, creo que ya estaba desesperada y por eso no leia correctamente.

Para progamar la hora en que se va a ejecutar la tarea, cuando entramos a Tareas--Copia de seguridad, en la parte superior izquierda, hay una leyenda que dice Generar Secuencia de Comandos, en mi caso elegi la que necesitaba, que es la que se usa en un plan normal, elegi Generar secuencia de comandos de acción en trabajo, y ya con esto te manda la ventana para empezar a programar tu JOB.

De antemano gracias y espero esto le sea de utilidad para alguien mas en la Web.

Saludos.

|<  <<  30 31 32 33 34 35 36 37 38 39 40  >>  >|