Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - d91

#46
hola a todos, solo necesito que me orienten, me encomendaron que a partir de una tabla quitar el 50% de los registros y pasarla a otra que tengo que crearla al mismo tiempo, es como un tipo de particionamiento, la duda es que si es una tabla padre la que tendre que particionar voy a tener problemas con las foraneas conectadas, esto es en una base de datos oracle
#47
hola a todos, solo quería que me orientaran con un tipo de dato, en la base de datos el dni tiene una longitud de 14, pero en c# si utilizo una variable int no me alcanza, pensé en hacer un arreglo de int pero al enviarlo al query no se como hacer para recorrerlo, y también pensé en un double pero este tiene parte decimal
#48
hola a todos, estoy intentado usar un objeto de datos .xsd en windows aplicacion, ya lo he usado en ambiente web, pero para windows no se utilizan las sesiones, y necesito que me den una idea para manejarlo, lo necesito llenar cuando se elige algun producto de la lista en un carrito de compras y que tenga acceso a el cuando genere la factura, les dejo el codigo que use en la pagina web donde canastaDS es el objeto
Código (csharp) [Seleccionar]

public canastaDS producto() {
        canastaDS obj = ((canastaDS)(Session("Canasta")));
        if ((obj == null)) {
            obj = new canastaDS();
            Session("Canasta") = obj;
        }
       
        return obj;
    }
   
    public void AgregaItems(clsDetalleProducto prod) {
        canastaDS obj = this.producto;
        canastaDS.InventarioDTRow fila = obj.InventarioDT.NewInventarioDTRow();
        try {
            fila.CodigoProducto = prod.codigoProducto;
            fila.Producto = prod.producto;
            fila.Precio = prod.precio;
            fila.Stock = prod.stock;
            fila.Tienda = prod.tienda;
            fila.Promocion = prod.promocion;
            fila.Proveedor = prod.proveedor;
            fila.cantidad = 1;
            fila.Subtotal = (prod.precio * 1);
            obj.InventarioDT.Rows.Add(fila);
        }
        catch (Exception ex) {
            Response.Write("<script  type=\'text/javascript\'>alert(\'Producto ya estaba agregado\');</script>");
        }
       
    }


protected void cargarcarrito() {
        gridCarrito.DataSource = Session("Canasta");
        gridCarrito.DataBind();
    }
#49
hola a todos, ahora he tenido que trabajar con visual studio para desktop pero tengo problemas con los comboBox, el primero llena bien y en el evento indexChanged intento llenar la segunda pero no me toma el valor seleccionado, he usado el depurador y veo que al cargar el formulario primero intenta llenar la segunda lista y después la lista que esta en el Load, (clave y nombre lo retorna el query)
Código (csharp) [Seleccionar]

private void IngresoProveedor_Load(object sender, EventArgs e)
        {
            this.ActiveControl = txtnit;
            deptoBS carga = new deptoBS();
            cmbdepto.DataSource = carga.cargaDeptos().Tables[0];
            cmbdepto.ValueMember = "clave";
            cmbdepto.DisplayMember = "nombre";
            //cmbdepto.DataBindings();
        }


private void cmbdepto_SelectedIndexChanged(object sender, EventArgs e)
        {
            //cargar el siguiente combobox
            mpioBS cargar =  new mpioBS ();
            cmbmpio.DataSource = cargar.selectMpios(Convert.ToInt32 (this.cmbmpio.SelectedValue   ) ).Tables[0];
            cmbmpio.ValueMember = "clave";
            cmbmpio.DisplayMember = "nombre";
        }
#50
hola a todos, estoy intentado activar un ítem del  menú toolStrip desde un form hijo en el evento formClosed, este lo desactivo al abrir el form hijo, pero al cerrar el form hijo me da el error de 'System.NullReferenceException', o  sea al abrir el form hijo se desactiva el menú y al cerrarlo debería de activarse, y solo lo primero he podido hacer
Código (csharp) [Seleccionar]

//aqui lo desactivo al abrir el form hijo

        private void proveedorToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Prueba f = new Prueba();
            f.MdiParent = this;
            f.Show();

            this.toolStripDropDownButton1.Enabled = false;

        }

//funciona bien

aquí les dejo la forma en que intento acceder al toolStrip del formulario principal
Código (csharp) [Seleccionar]

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace SAF
{
    public partial class Prueba : Form
    {
        Form1 f = new Form1(); // nombre de mi formulario principal

        public Prueba()
        {
            InitializeComponent();
           
        }

        private void Prueba_Load(object sender, EventArgs e)
        {

           

        }

        private void Prueba_FormClosed(object sender, FormClosedEventArgs e)
        {
           
            ToolStrip objMenu = (ToolStrip)this.f.Controls["toolStripDropDownButton1"];

           
            objMenu.Items["toolStripDropDownButton1"].Enabled = true;

            //aquí debería de activarse nuevamente el menu


        }
    }
}



#51
hola necesito hacer una división entre dos enteros y como posiblemente el resultado será con decimales no se como convertirlo porque solo me toma 4 y no 4.4 que seria la respuesta.
Código (cpp) [Seleccionar]



int divisor = 5;
int dividendo = 22;

float resultado;

resultado = dividendo / divisor;

#52
Programación C/C++ / problema con if
23 Octubre 2015, 03:26 AM
hola a todos, tengo una lista doblemente enlazada con nodos con una variable llamado "verificado" y siempre que sea su valor sea 1 de esta variable deberá entrar al if hasta que en algún momento sea 0, en un momento dado tengo un proceso mayor al quantum y la variable se pone en 1 y aumenta la bandera, el bucle se queda infinito al hacer una segunda comprobación de la lista porque todos aparecen con verificado = 0, y ya no puedo entrar a restar la bandera, no se si el error esta al poner la lista nuevamente al primer nodo
Código (cpp) [Seleccionar]

void SchedulerRoundRobin(Tlista &lista){

 OrdenarTiempoLlegada(lista);

 Tlista aux, tempLista;

 cont = 0;

  aux = lista;

  bandera = 0;

  do{

            while(lista != NULL){


                   if(lista->CPUaux > quantum ){

                        cont = cont + quantum;

                          bandera = bandera + 1;

                             lista->verificado = 1;


                             tempLista = lista->anterior; //adjudicando listatemporal

                            lista->espera = lista->espera + tempLista->enEjecutarse;

                             lista->CPUaux = lista->CPUaux - quantum;//aqui resto y al segundo recorrido

                             lista = lista->sgte;//el proceso ya no entrara


                       }//if del quantum//aqui porque sera menor al quantum;


                       else if(lista->verificado != 0){

                            if(lista->espera != 0){

                            bandera = bandera - 1;

                            }//if aux->espera

                            cont = cont + lista->CPUaux;

                            lista->verificado = 0;


                            lista->enEjecutarse = cont;

                            if(lista->anterior != NULL){

                            tempLista = lista->anterior; //adjudicando listaTemporal

                            lista->espera = lista->espera + tempLista->enEjecutarse;

                            }//if != NULL
                            else{

                            lista->espera = 0;

                            }//else

                            lista = lista->sgte;

                       }//else if

              }//while secundario

              lista = aux;//reiniciando la lista al primer nodo


     }while(bandera > 0);//while principal


}//calendarizacion turno circular


#53
hola, tengo una lista doblemente enlazada, y estoy simulando el primer ajuste estatico de memoria, pero al realizar las asignaciones, la lista queda en el ultimo nodo y a pesar que tengo un nodo que referencia al anterior no puedo regresar, cosa que si puedo hacer con la lista donde tengo los procesos, el error me lo da exactamente en el ultimo while
Código (cpp) [Seleccionar]

void primerAjuste(Tlista &lista, Tlista &memoria){

   while(lista != NULL){

         if(memoria->estado != 0 && lista->nro < memoria->nro){

          lista->asignado = memoria->nro;

               memoria->estado = 0;

               lista = lista->sgte;


                   while(memoria->anterior != NULL){

                     memoria = memoria->anterior; //regresamos al principio por
                                                     //si hay bloques libres intermedios
                     }//while



         }//if
         else{

            memoria = memoria->sgte; //si proceso muy grande o bloque esta ocupado

         }//else

   }//while lista

   while(lista->anterior != NULL){    /*aqui me da error de violacion de direccion*/

      lista = lista->anterior;   /*intento regresar la lista al primer nodo*/
   }//regresamos al principio a la lista
                                                    /*porque si la dejo asi cuando intento verla*/
                                                    /*no se puede porque queda en el ultimo nodo*/
}


#54
Programación C/C++ / lista doblemente enlazada
19 Octubre 2015, 01:29 AM
hola a todos, estoy tratando de hacer una insercion en una lista enlazada doble pero tengo error en la asignacion del puntero del nodo hacia el anterior, alguien me podria ayudar
Código (cpp) [Seleccionar]


#include <iostream>
#include <stdlib.h>
#include <conio.h>

struct nodo{
       int nro;
       struct nodo *sgte;
       struct nodo *anterior;
};

typedef struct nodo *Tlista;
/*
----------------------------------------------
*/
void insertarFinal(Tlista &lista, int valor)
{
    Tlista t, q = new(struct nodo);

    q->nro  = valor;

    if(lista==NULL)
    {
        q->sgte = NULL;
        q->anterior = lista;
        lista = q;
    }
    else
    {
        t = lista;
        while(t->sgte!=NULL)
        {
            t = t->sgte;
        }
        t->sgte = q;
        q->anterior = t;
    }

}

#55
.NET (C#, VB.NET, ASP) / habilitar menustrip
16 Octubre 2015, 00:13 AM
hola a todos estoy haciendo una pequeña aplicación Windows forms, en un panel cargo los usercontrol de que tienen formularios, grid, etc. lo único es que quiero forzar al usuario a que cierre el usercontrol para poder abrir otro, pensé en deshabilitar el menú al abrir el usercontrol, pero no se en que evento habilitarlo para cuando se cierre el usercontrol
Código (csharp) [Seleccionar]

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace SAF
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
           
        }

       

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void nuevoClienteToolStripMenuItem_Click_1(object sender, EventArgs e)
        {

            if (!panel3.Controls.Contains(InsercionClientes.Instance))
            {

                panel3.Controls.Add(InsercionClientes.Instance);
                InsercionClientes.Instance.Dock = DockStyle.Fill;
                InsercionClientes.Instance.BringToFront();
               
            }//if de estado de UC

            else {

                InsercionClientes.Instance.BringToFront();
            }//else
            menuStrip1.Enabled = false;
           
        }
    }
}


#56
alguien me podría decir que le hace falta a esta secuencia de Oracle para que siempre mantenga el orden de incremento, puesto que al cerrar la base de datos y volverla a abrir me aparece incrementada hasta 10 valores arriba de donde se había quedado antes de cerrar la base de datos
Código (sql) [Seleccionar]

CREATE SEQUENCE NUEVASEQUENCIA
START WITH 1
INCREMENT BY 1
MINVALUE 1
NOMAXVALUE;

de una vez les dejo el trigger que la hace funcionar
Código (oracle8) [Seleccionar]

CREATE OR REPLACE TRIGGER T_INCREMENTAR
BEFORE INSERT ON TAB_RANGO
FOR EACH ROW
SELECT NUEVASEQUENCIA.NEXTVAL INTO :NEW.IDRANGO FROM DUAL;
END;

#57
hola solo queria preguntar si es posible tener en un dropdownlist el codigo, nombre y precio de cierto producto con el cual la lleno, porque hasta ahorita solo he llenado el datavaluefield con el codigo y el datatextfield con el nombre pero al seleccionarla necesitaria tambien el precio pero no se donde ponerla
Código (vbnet) [Seleccionar]

Private Sub cargarprod()
        Dim prod As New productoBS
        lstprod.DataSource = prod.cargaComboProd
        lstprod.DataValueField = "CODE"
        lstprod.DataTextField = "NOMBRE"
        lstprod.DataBind()

    End Sub
#58
hola,  necesito saber como destruir las variables de sesion y vaciar una clase de tipo singlenton(de una sola instancia) porque aunque los asigno a nothing no quedan vacias, ya he probado asi
Código (vbnet) [Seleccionar]


GlobalIdentity.Instance.User = ""
        GlobalIdentity.Instance.Password = ""
        Me.Session("UserID") = Nothing
        Me.Session("UserName") = Nothing
        Me.Session.RemoveAll()
#59
hola necesito loguearme de manera dinamica con diferentes usuarios ya definidos dentro de Oracle, la clase singlenton  y la funcion de conexion ya funcionan bien, siempre que el usuario y el password sean correctos, lo unico que cuando ingreso algun usuario equivocado entonces no va a conectar y oracle directamente produce una excepcion y detiene la ejecucion,  no se como capturar esa excepcion y traducirla en un pequeño mensaje de "USER Y PASS INCORRECTOS" a mi aplicacion web
Código (vbnet) [Seleccionar]

  Public Function conexion() As Oracle.DataAccess.Client.OracleConnection
        Try
            'Dim objeto As New GlobalIdentity
            user = GlobalIdentity.Instance.User
            pass = GlobalIdentity.Instance.Password

                If String.IsNullOrEmpty(user) Or String.IsNullOrEmpty(pass) Then
                    Throw New Exception("Usuario y Password son requeridos")
                End If

           

            Dim conn As String = ConfigurationManager.ConnectionStrings("Principal").ConnectionString

            conn = String.Format(conn, user, pass)
            Dim cn As New OracleConnection()
            cn.ConnectionString = conn
                Return cn
        Catch ex As OracleException

            Throw New ArgumentException("Error en la Conexion" & ex.ToString)


        End Try

    End Function
#60
hola a todos, aunque se muy bien que para pedir apoyo debo de poner codigo, esta vez no he podido construir casi nada, necesito realizar un backup logico de una base de datos oracle desde una aplicacion en .net pero no se como, un ejemplo encontre pero para SQL Server, el export siempre lo habia hecho desde la consola
Código (sql) [Seleccionar]

expdp usuario/contraseña dumpfile=copia_oracle_export.dmp
logfile=copia_oracle_export.log directory=CARPETA_EXPORT full=y
#61
hola a todos, solo quiero que me orienten de como capturar una excepcion que dispara oracle y que es una cadena, no las he podido controlar con el codigo de visual basic.net porque de la forma en que lo hago retornaria una cadena y la funcion donde tengo el try catch retorna un entero si la ejecucion es normal
Código (vbnet) [Seleccionar]

public function ejecutasql() as integer
try
'todo_bien en la consulta
return 1
Catch ex As OracleException
Return "Error al generar Consulta" & ex.ToString
End Try

tambien he probado con esta otra pero igual no me controla la excepcion sino que de una vez me detiene la ejecucion
Código (vbnet) [Seleccionar]

Catch ex As OracleException
            Throw New ArgumentException("Error al generar consulta " & ex.Message.ToString)
        End Try
#62
Bases de Datos / quitar privilegios en oracle
5 Octubre 2015, 04:26 AM
hola, estoy trabajando con oracle desde una aplicacion en .net, desde la app creo un usuario y le doy privilegios, y desde la misma app le tengo que quitar esos privilegios, en la creacion y dar privilegios no hay problema pero al momento de quitarlos da este error
Código (vbnet) [Seleccionar]

ORA-01031: insufficient privileges

la linea de codigo que ejecuto en el procedimiento almacenado es este
Código (sql) [Seleccionar]

execute immediate 'Revoke create session FROM '||nombre;

el privilegio que estoy quitando es para que ya no se pueda conectar a la base de datos, lo unico es que al hacerlo desde la consola no hay problema, aunque lo hago con el mismo usuario que es propietario de algunas tablas y que tiene privilegios de DBA
#63
hola a todos, estoy trabajando el prototipo de un procedimiento almacenado en Oracle, desde la aplicacion en .net me envian cuales opciones fueron marcadas(por lo menos marcaron una) y las tengo que concatenar porque es para dar privilegios a un nuevo usuario, encontre una solucion pero veo que es muy extensa, tal vez me ayudan con otra idea para hacerlo mas pequeño y mas optimo
Código (sql) [Seleccionar]

set serveroutput on
declare
priv1 NUMBER(2);
priv2 NUMBER(2);
priv3 NUMBER(2);
priv4 NUMBER(2);
privilegios varchar2(512);
cadena varchar2(1000);
begin


priv1:=1;--privilegio de insert
priv2:=1;--privilegio de update
priv3:=0;--privilegio de delete
priv4:=1;--privilegio de select
if priv1 > 0 then
  privilegios:='INSERT';
  end if;
 
if priv2 > 0 and privilegios is not null then
   privilegios:=privilegios||','||'UPDATE';
   end if;

if priv2 > 0 and privilegios is null then
   privilegios:='UPDATE';
   end if;
   
if priv3 > 0 and privilegios is not null then
  privilegios:=privilegios||','||'DELETE';
  end if;

if priv3 > 0 and privilegios is null then
  privilegios:='DELETE';
  end if;
 
if priv4 > 0  and privilegios is not null then
  privilegios:=privilegios||','||'SELECT';
end if;

if priv4> 0 and privilegios is null then
  privilegios:='SELECT';
  end if;
cadena:='grant '||privilegios||' on '||' tab_estudiante '||' to '||' my_usuario';
dbms_output.put_line(cadena);
end;
#64
hola a todos, estoy tratando de llenar un datagrid  con una consulta directa con sql a oracle, pero el error indica que el query tiene caracteres invalidos, lo raro es que ya  ejecute otro query que tambien tiene caracteres parecidos y no dio error, habra alguna forma de evitar este error ya probe poniendo comillas y /o concatenando
Código (sql) [Seleccionar]
select name from v$sysstat where value > 0 order by name;
el error creo que es por el caracter $ que tiene, pero el query que ya me funciono es
Código (sql) [Seleccionar]
select * from v$sgastat;
estas consultas son para ver memoria y consultar el hitratio
#65
.NET (C#, VB.NET, ASP) / Pagina que hereda clase
27 Septiembre 2015, 03:29 AM
hola a todos estoy tratando de implementar user control, pero hice una clase llamada pagina base, donde cada vez que se cargue una pagina se verifiquen variables de session para cargar el user control, pero la pagina por defecto hereda de system.web.ui.page y no hay herencia multiple en visual basic, por lo que necesito que esta pagina herede la clase pagina_base, pero si quito lo que hereda por defecto la pagina no funciona, agradezco sus comentarios
Código (vbnet) [Seleccionar]

Public Class inciso3
    Inherits System.Web.UI.Page
#66
hola a todos, estoy llenando un dropdownlist desde un procedimiento almacenado
con un dataset, solo que al cargarlo aparece el primer item, por lo que necesito
que al cargar aparezca un espacio vacio  y despues los items,
Código (vbnet) [Seleccionar]

lsttabla.DataSource = tabla.empleados
        lsttabla.DataValueField = "CODE"
        lsttabla.DataTextField = "NAME"
        lsttabla.DataBind()

y aqui la parte del metodo que estoy llamando
Código (vbnet) [Seleccionar]

Dim ds As DataSet
        Try
            con = New ConectDatos
            Dim listaParam As List(Of OracleParameter) = New List(Of OracleParameter)
            Dim param1 As OracleParameter = New OracleParameter("ResCursor", OracleDbType.RefCursor)
            param1.Direction = ParameterDirection.Output
            listaParam.Add(param1)
            ds = New DataSet
            ds = con.getdataset("USP_CARGA_EMPLEADO", listaParam)
            Return ds
#67
hola, estoy construyendo un pequeño proyecto con visual basic.net  y oracle con store procedure, ya he visto algunos ejemplos para hacerlo en capas, lo unico que en los ejemplos esta lista se llena de manera estatica porque son procedimientos de select, pero necesito hacer un insert pero no se como recorrer la clase que la he recibido como objeto les dejo el procedimiento que si funciona pero es estatica con la lista y la que tengo que implementar
Código (vbnet) [Seleccionar]

Public Function SelectEmple(ByVal spName, ByVal IntIdTienda As Integer) As DataSet
Dim ds As DataSet
Try
con = New ConectDatos
Dim listaParam As List(Of OracleParameter) = New List(Of OracleParameter)
Dim param1 As OracleParameter = New OracleParameter("IntIdTienda", OracleDbType.Int32)
param1.Value = IntIdTienda
listaParam.Add(param1)
Dim param2 As OracleParameter = New OracleParameter("ResCursor", OracleDbType.RefCursor)
param2.Direction = ParameterDirection.Output
listaParam.Add(param2)
ds = New DataSet
ds = con.getdataset(spName, listaParam)
Return ds
Catch ex As Exception
Throw New ArgumentException("Error cursor USP_CARGA_EMPLEADOS" + ex.ToString)
End Try
End Function

'*****************************

'*****************************
Public Function EjecutaSql(ByVal spName As String, ByVal entidad As Object) As Integer
con = New ConectDatos
Dim row As Integer
Dim i As Integer

Dim listaParam As List(Of OracleParameter) = New List(Of OracleParameter)
'Dim param1 As OracleParameter
'i = 0
'
'For Each p As Object In entidad
'param1 = New OracleParameter(entidad(i++), OracleDbType.Int32)
'     listaParam.Add(param1)
' Next
row = con.EjecutarQuery(spName, listParam)
Return row
End Function

agradezco de antemano la orientacion
#68
Bases de Datos / ver tablespace de cada usuario
18 Septiembre 2015, 03:04 AM
hola a todos, necesito ver los tablespace asignados a cada usuario en oracle a traves de un procedimiento almacenado, pero al compilar el procedimiento dice que la tabla o vista no existe, lo raro es que si ejecuto solo el select en la consola si me los muestra porque tengo los permisos necesarios
Código (sql) [Seleccionar]
create or replace procedure usp_ver_tablespace(ResCursor IN OUT SYS_REFCURSOR)
is
begin
OPEN ResCursor
For SELECT USERNAME, DEFAULT_TABLESPACE FROM DBA_USERS;
end;


ya hice tambien el procedimiento para ver los todos los usuarios y este si me funciono
#69
hola a todos, estoy trabajando un proyecto en Oracle relacionado a transacciones, pero me piden que al realizar un insert, delete, update, guarde en una bitacora el nombre de usuario que lo realizo, tipo de operacion  y  la tabla que se realizo, pero no se si se hace con un select  a algunas de las tablas V$ de oracle o es al sistema en si, para capturar y meterlo en un cursor, agradezco su orientacion
#70
Hola a todos, estoy intentando simular el algoritmo dekker 1 (alternancia estricta), llamo al proceso 1, y su seccion_critica inicia el bucle for empieza corriendo bien pero al retomar el bucle for despues de la  primera interrupcion ya no lo realiza, el for deberia llegar a 7000 porque  aumento el acumulador de los procesos
Código (cpp) [Seleccionar]

struct PCB{
int id; //id del proceso
char nombre[16];//nombre
int tareas_iniciales; //duracion de las tareas iniciales
int duracion; //cuanto durara el proceso
int quantum; //contador de interrupciones
int acumulador;//valor antes de la interrupcion
};

PCB p1;
PCB p2;

void crear_procesos(){        /***********************************/
p1.id=1;                      //  RELLENA DATOS A LAS
strcpy(p1.nombre,"PWRDVD");   //  ESTRUCTURAS
p1.duracion=7000;             //  DE TIPO PCB
p1.quantum=0;                 //
p1.acumulador=0;              //                 //
p1.tareas_iniciales=2000;     //  P1 ES PARA PROCESO1
                              //
p2.id=2;                      //
strcpy(p2.nombre,"DVDRIPPER");//  P2 ES PARA PROCESO2
p2.duracion=7000;             //
p2.quantum=0;                 //
p2.acumulador=0;              //                  //
p2.tareas_iniciales=2000;     /*****************************/
}

int seccion_critica(int id){
cout<<"\nSeccion Critica: Proceso "<<id;
   if(id==1){
   for(int i=p1.acumulador; i<=p1.duracion; i=i+1000){
    p1.acumulador=i;
      if(i==3000||i==6000||i==9000){
         
         return 1;    /*** ENTRO AL BUCLE DEL QUANTUM ***/
         Sleep(2000);
         break;
    }  //if
   }//for
   }//if principal
   else{
       for(int i=p2.acumulador; i<=p2.duracion; i=i+1000){
            p2.acumulador=i;
    if(i==3000||i==6000||i==9000){
         
         return 1;        /*** ENTRO AL BUCLE DEL QUANTUM***/
         Sleep(2000);
         break;
    }  //if
   }//for
   }//else
   Sleep(2000);
}


la interrupcion se da a los 3000 lo cual si funciona, se interrumpe pero como es alternancia estricta regresa hacia la seccion_critica porque no ha terminado, en teoria la siguiente seria en 6000, pero despues de la primera interrupcion se vuelve a llamar a la sección critica del proceso 1 pero el ciclo for ya no hace nada solo se inicia en 3000 pero ya no sigue contando, aunque p1.duracion sigue siendo 7000, agradecere sus aportes
#71
hola a todos, deseo comprender una linea de codigo que me dieron, es de numeros aleatorios con rand
Código (cpp) [Seleccionar]
numero=rand() % 100 + 1 <= 50 ? 1 : 2;
entiendo la parte que dice que el numero sera entre 1 y 100, pero ya no entiendo donde es menor o igual a 50, entre 1 y 2 agradezco su orientacion
#72
Bases de Datos / duda con llaves foraneas
25 Agosto 2015, 12:12 PM
hola a todos, como tarea me han dado un diagrama entidad-relacion para que lo monte en una base de datos, estoy trabajando sobre oracle, mi duda es que en este diagrama existe una tabla ventas que  pretende usar como foraneas campos de una tabla inventario que tambien son foraneas, no se si puedo declarar llaves foraneas tambien como primarias al mismo tiempo, porque el modelador no me deja hacer dicha relacion
Código (sql) [Seleccionar]

CREATE TABLE tab_inventario(
existencia   NUMBER(6),
id_tienda  NUMBER(6),
id_producto NUMBER(6),
id_proveedor NUMBER(6),
CONSTRAINT inventario_tienda_FK FOREIGN KEY id_tienda REFERENCES tab_tienda(id_tienda),
CONSTRAINT producto_tienda_FK FOREIGN KEY id_producto REFERENCES tab_producto(id_producto),
CONSTRAINT proveedor_tienda_FK FOREIGN KEY id_proveedor REFERENCES tab_proveedor(id_proveedor),
);

CREATE TABLE tab_venta(
id_venta NUMBER(6),
monto    NUMBER(6,2),
cantidad_producto NUMBER(6),
id_tienda  NUMBER(6),
id_producto NUMBER(6),
CONSTRAINT id_venta_PK PRIMARY KEY id_venta
/*aqui irian las foraneas*/
);

asi vendria quedando el script, pero id_tienda y id_producto de la tabla venta tienen que hacer referencia a los campos de la tabla inventario y al hacer la referencia desde la tabla venta el error dice: en tab_inventario no existen campos primary key para hacer referencia
#73
hola a todos estoy tratando de hacer una consulta con 3 tablas relacionadas la tabla alumnos tiene enlazadas las tablas email y telefono por medio del id_alumno y con este query intento obtener la combinacion
Código (sql) [Seleccionar]

SELECT a.id, a.nombre, a.apellido, t.telefono, e.email
FROM alumno AS a, telefono AS t, email AS e
WHERE a.id=t.id_alumno AND
a.id=e.id_alumno;

aunque deseo obtener los datos aunque por ejemplo, no haya ingresado aun un telefono o un email para cada estudiante, pero con este query si no cumple la condicion no devuelve ningun resultado, agradeceria me orientaran para lograr mostrar los datos de los alumnos aunque no tengan un email o un telefono y si los hay que los muestre
#74
PHP / pagina de inicio en contenedor
4 Junio 2015, 14:19 PM
hola todos, estoy en un pequeño proyecto de php, ya casi lo termine, pero estoy usando dos contenedores: uno para el menu y el otro para cargar las paginas, ahora necesito que al entrar al sistemas despues de loguearme, se me cargue una pagina de bienvenida por defecto en el contenedor donde aparecen las paginas, he buscado y encontre un script, funciona pero no me deja cargar ninguna otra pagina en ese contenedor, agradecere sus aportes
#75
hola a todos, estoy intentando implementar que despues de hacer la consulta de insercion con php  y sqlite se redirija a otra pagina enviando una variable con el codigo que he insertado pero no encuentro la sintaxis que lo ejecute,
Código (php) [Seleccionar]

if($bd->query($sql)){
echo '<meta http-equiv="refresh" content="0;url=modulos/return_insert_est.php?var='$codigo'">';
}

el problema lo tengo al asignar el codigo a la variable var porque el error dice: unexpected $codigo, y si escribo
Código (php) [Seleccionar]

if($bd->query($sql)){
echo '<meta http-equiv="refresh" content="0;url=modulos/return_insert_est.php?var='<?php echo $codigo?>'">';
}

la variable aparece vacia porque estoy redundando con el echo, agradecere sus aportes
#76
hola a todos, he estado tratando de cargar un formulario en un contenedor a la derecha, esto despues de seleccionar un opcion de un menu a la izquierda que esta en otro contenedor, como trabajo con sesiones y a pesar de validar la sesion en este formulario me envia ha loguearme el metodo que estoy usando es más o menos así:
Código (php) [Seleccionar]

<?php
session_start
();
   include_once 
"config.php";
include_once "modulos/class_buscar.php";
include_once "../funciones.php";
if($_SESSION['tipo_rol']==1){
$cod_usuario=limpiar($_SESSION['cod_user']);
$nombre=limpiar($_SESSION['user_name']);
}else{
header('Location:login.php');
}
?>

<!--  aqui los contenedores   -->
<div class="content_izquierda">
<ul>
<li>
<div class="link">Administrar Alumnos<i class="fa fa-chevron-down"></i></div>
<ul class="submenu">
<li><a href="./?opcion=1">Agregar Alumno</a></li>
<li><a href="#">Actualizar Alumno</a></li>
<li><a href="#">Consultar Alumno</a></li>
<li><a href="#">Borrar Alumno</a></li>
</ul>
</li>
</ul>
</div>
<div class="content_derecha">
<?php
$opcion=@$_GET[opcion];
switch($opcion){
case "1":
include_once("modulos/abc/datos_alumnos.php");
break;
}
?>

</div>

tambien he visto algunos ejemplos con javascript, pero esto son al pulsar un boton, agradecere sus comentarios
#77
PHP / acceder a una posicion del arreglo
27 Mayo 2015, 05:13 AM
hola a todos, no se como tratar con un arreglo que me retorna de una consulta sql,
necesito acceder a una determinada posicion pero no encuentro como:
Código (php) [Seleccionar]


if($resultado=$db->query($sql)){
$row = $resultado->fetchArray();//obtener arreglo del resultado

        //yo se el nombre de los campos que me retorno y quisiera por ejemplo
        //comparar el campo  llamado  id_rol, (es para un logueo)
             if($row['id_rol']==1){
                  //hacer
              }
     

estoy trabajando con sqlite
agradezco sus aportes
#78
hola a todos, estoy tratando de obtener el puerto donde se conecta el arduino por medio de  c# pero no se como obtener los datos que se obtienen en la variable el pedazo de codigo es:
Código (csharp) [Seleccionar]

ManagementObjectSearcher vloPrueba = new ManagementObjectSearcher("select * from Win32_SerialPort where name like '%aArduino%'");

            // List<ListaDispositivos> vloLista = new List<ListaDispositivos>();

            foreach (ManagementObject service in vloPrueba.Get())
            {

                //vloLista.Add(new {nombre service["DeviceID"].ToString(),puerto = service["Name"].ToString()});
                nombre = service["DeviceID"].ToString();
                puerto = service["Name"].ToString();
                }

al principio trate de agregarlo a un combobox pero al agregar los valores me daba error entre los corchetes porque escribo entre comillas DeviceID y Name por lo que ahora trato de agregarlo a un arreglo de variables
#79
.NET (C#, VB.NET, ASP) / .net + wpf
12 Marzo 2015, 18:50 PM
hola a todos, ahora estoy iniciando en .net, he visto algunos tutoriales enfocados a web con .net, pero ahora me queda la duda, puedo hacer un proyecto WPF para web, ya que sobre este solo he entendido que es para aplicaciones de escritorio y explotando las caracteristicas que tuvo windows vista, pero he visto un par de paginas web con estas caracteristicas
#80
Electrónica / cargador con un jack
8 Febrero 2015, 22:54 PM
hola a todos, hace poco compre un carrito parlante, pero no me fije que no traia el cable para cargar la bateria, la cual es similar a la de un telefono celular, la entrada de carga es jack de 5v dc, mi pregunta es: es posible adaptarle un cargador de tipo usb a un conector jack, pues el usb trae 4 o a veces 2 cables y el jack macho que necesito tiene 3, agradezco su atencion,
#81
PHP / error en variable php
5 Enero 2015, 01:11 AM
hola a todos, estoy haciendo un pequeño ensayo de manejo de sesiones, pero al intentar registrar un usuario tengo problemas con una variable en php aqui como las declare:
Código (php) [Seleccionar]

<?php
require_once('funciones.php')

$user strip_tags($_POST['user']);
$pass strip_tags(sha1($_POST['pass']));
$mail strip_tags($_POST['mail']);
$ip $_SERVER['REMOTE_ADDR'];

.....
?>


bueno ese strip_tags lo vi en un tutorial para suprimir las etiquetas html del metodo post y el sha1 para guardar la contraseña de manera cifrada ya habia hecho otras    practicas pero sin eso. y el error dice
Código (php) [Seleccionar]

Parse error: syntax error, unexpected '$user' (T_VARIABLE) in D:\wamp\www\logger\registro.php on line 4

bueno, ya intente borrar esa linea pero despues me da error en la declaracion de la siguiente variable y asi sucesivamente,
agradecere su orientacion
#82
PHP / insercion de fecha con php
10 Octubre 2014, 13:10 PM
hola a todos, estoy intentando insertar algunos datos a una base datos pero me da error al guardar la variable fecha el codigo php es:
Código (php) [Seleccionar]

<?php include_once("db_conexion.php"); ?>
<?php
$ins 
= @$_POST["ins"];
$id = @$_POST["id"];
$id2 = @$_POST["id2"];
$id3 = @$_POST["id3"];
$fecha = @$_POST["fecha"];
$obs = @$_POST["obs"];

if(
$ins == "1") {
$db = new MyDB();
$sql "INSERT INTO TB_PEDIDO (ID_PEDIDO, ID_EMPLEADO, ID_CLIENTE, FECHA_PEDIDO, OBSERVACION)
VALUES('"
.$id."','".$id2."','".$id3."','".$fecha."','".$obs."')";
if($db->query($sql)) {
$_SESSION["resultado"] = "No se encontraron registros";

header("Location: ./?opcion=0");
}
}

y la linea del input del tag de fecha es:
Código (html4strict) [Seleccionar]

<input type="date" class="form-control" name="fecha" id="fecha" value="<?php echo $fecha?>">

no se si hay algo extra de como se tratan las demas variables a como se trata la fecha especificamente la DB es sqlite3,
agradezco sus aportes
#83
PHP / carga pagina por defecto en contenedor
9 Octubre 2014, 13:25 PM
hola nuevamente, anteriormente queria cargar una pagina dentro de un contenedor al dar click a un boton, ahora quiero que cargue de manera predeterminada al abrir la pagina, entonces mi pregunta es en vez de onclick del boton donde agrego el evento onload en el contenedor
Código (php) [Seleccionar]
<input type="button" value="Editar" name="editar" onclick="edicion()">/*ya solucionado*/
<div id="izquierdo">onload esta_funcion();</div>
#84
PHP / cargar pagina php en un div contenedor
8 Octubre 2014, 06:23 AM
hola a todos estoy haciendo una pequeña pagina donde debo de elegir el campo a editar de un registro y al hacer click en el boton debe cargar la pagina solicitada en un div que esta a la izquierda intento hacerlo con javascript pero no se donde tengo el error. En css tengo un id #izquierda y #derecha y la pagina a cargar se llama edit.php, aqui el fragmento
Código (php) [Seleccionar]
<script type="text/javascript">
function edicion(){
$('#derecha').load('edit.php #prueba')/*aqui no se como cargar la pagina en el div derecho*/
alert("Me haz dado un click");

}
</script>
<div id="wrapper"> <!-- aquí meteré todas las capas -->
  <div id="superior"><h2 align="center">EDITANDO REGISTRO CLIENTE</h2></div> <!-- aquí podría ir el logo -->
  <div id="content"> <!-- aquí meteremos todo el contenido -->
    <div id="izquierdo"><div id='menuWrapper'><div class='menu'><h5 align="center">Edicion de Registros</h5></div></div>
<div class="panel-body">
              <form autocomplete="off">
<table width="100%" align="center">
<tr>

<label>Ingrese ID</label>&nbsp;
<input type="text" name="id" id="id" maxlength="8" size="3">
<br>
<label>Columna</label>&nbsp;
<select name"lista">
<option value="edit.php">ID detalle</option>
<option>ID pedido</option>
<option>ID Producto</option>
<option>Cantidad</option>
<option>Estado</option>

</select>

</tr>
<br>
<br>
<tr>
<input type="button" value="Editar" name="editar" onclick="edicion()">
</tr>
<br>
<br>
<br>

</table>
</form>
</div>
</div>
   <!-- <div id="centro">texto y más cosas</div>-->
    <div id="derecho" name="derecha"><div id='menuWrapper'><div class='menu'><h5 align="center">Editando Registro Cliente</h5></div></div></div>
  </div>
  <div id="footer">hola!</div> <!-- y este sería el pie de página -->
</div>

agradezco sus aportes
#85
PHP / query-update
28 Septiembre 2014, 05:21 AM
Hola, como han estado, tengo un problemita al declarar la consulta para realizar un update a una tabla de mysql me da error no se que le hace falta, el error dice... Unable to prepare statement: 1, near &quot;=&quot;: syntax error line 12 y esta linea es:
Código (php) [Seleccionar]
$sql = "UPDATE TB_CLIENTE SET NOMBRE_CLIENTE='".$name."', APELLIDO_CLIENTE='".$apellido."', DIRECCION_CLIENTE='".$direccion."' WHERE ID_CLIENTE='$ident'";
agradecere sus aportes
#86
Java / una llamada a cmd desde un jframe
18 Junio 2014, 20:58 PM
Un saludo a todos, estoy haciendo un jframe en java, pero necesito mandar a llamar un programa externo ejecutandose en cmd al hacer click en un boton, ya he hecho pruebas como con help, ipconfig y dir y si funciona, porque ademas necesito que muestre en un jtextarea lo que mostro el comando ejecutado; pero en mi caso el ejecutable es un exe generado en c++, ya lo he incluido al PATH para llamarlo pero no me funciona, a veces no hace y en otras solo sale el mensaje de error, en resumen no se como mandarlo a llamar y en donde poner el ejecutable; no se si la llamada la hace a C:\\documents and settings\ usuario \ ..o a donde porque no se ejecuta el programita que necesito las lineas de codigo que utilizo son:
Código (java) [Seleccionar]

if(e.getSource()==boton2){
Runtime analisis=Runtime.getRuntime();
try{

String cmd="help";

    Process proceso = analisis.exec(cmd);
    BufferedReader read=new BufferedReader(new InputStreamReader(proceso.getInputStream()));
    textarea1.setText("");
    String linea;
    while((linea=read.readLine())!=null){
textarea1.append(linea+"\n");
}

el pedazo anterior funciona de maravilla
pero como help es un comando por lotes
y mi programa es un analizador.exe busco
alguna forma de hacer un cd\ para ejecutar desde
C:\\

Código (java) [Seleccionar]

if(e.getSource()==boton2){
Runtime analisis=Runtime.getRuntime();
try{



String[] cmd = new String[3];


cmd[0] = "cmd.exe" ;
               cmd[1] = "/C"; // no se si esta linea hace un cd \
               cmd[2] = "analizador.exe";
                                        //aqui ya probe agregarlo al PATH
//y poner el nombre de la variable pero no me ha dado resultado
    Process proceso = analisis.exec(cmd);
    BufferedReader read=new BufferedReader(new InputStreamReader(proceso.getInputStream()));
    textarea1.setText("");
    String linea;
    while((linea=read.readLine())!=null){
textarea1.append(linea+"\n");
}
   


a veces digo donde estara help para pegar
mi ejecutable en ese mismo directorio....
agradecere de antemano su orientacion,
#87
Java / llamar ejecutable.exe desde jframe
18 Junio 2014, 14:13 PM
hola a todos estoy tratando de hacer un jframe que llame a un programa.exe para ejecutarlo, pero en mi caso el ejecutable es un programa de c++ compilado por lo que no lo ejecuta ¿sera debo agregar alguna linea de codigo? agradecere su orientacion
Código (java) [Seleccionar]

if(e.getSource()==boton2){
Runtime analisis=Runtime.getRuntime();

try{

Process p=Runtime.getRuntime().exec("C:\\compiler.exe");
//aqui es donde mandamos a llamar el analizador cuando ya es un ejecutable
}catch(IOException e2){
JOptionPane.showMessageDialog(rootPane, "No se ha podido ejecutar el analisis");

}

}

ya probe este codigo para un .exe de un programa portable que tengo y si funciona pero este como es de c++ no funciona
#88
hola a todos necesito ejecutar un programa desde un jFrame en java al presionar determinado boton pero no lo hace y ni siquiera da error aqui el pedazo de codigo
Código (java) [Seleccionar]

public void actionPerformed(ActionEvent e) {
Runtime analisis=Runtime.getRuntime();
if(e.getSource()==boton2){

JOptionPane.showMessageDialog(rootPane, "Presionado compilar");
try{
JOptionPane.showMessageDialog(rootPane, "Entro al try");
analisis.exec("C:\\prueba.exe");
JOptionPane.showMessageDialog(rootPane, "ya salio del  try");
}catch(IOException e2){
JOptionPane.showMessageDialog(rootPane, "No se ha podido ejecutar el analisis");

}
}

tambien ya probe un process p= null asi
Código (java) [Seleccionar]

Runtime analisis=Runtime.getRuntime();
Process p= null;

p=analisis.exec("C:\\prueba.exe");
#89
Hola a todos tengo que hacer un analizador sintactico con bison pero al compilar me da el siguiente error: bison: m4: invalid argument agradeceria si me puedieran orientar el codigo.y es el siguiente:
Código (cpp) [Seleccionar]
%{
#include<math.h>
#include<string.h>
#include<intmus.h>
/*enlace con lex*/

extern unsigned yylineno;
extern FILE *yyout;
%}
%union{
int valor;  /*valor actual*/
TablaSim *sim; /*puntero a tabla de simbolos*/
}
%token READ WRITE MAS MENOS POR DIV PUNTO_Y_COMA MENOS_UNARIO
%token ABRE_PARENT CIERRA_PARENT PUNTO POTENCIA IGUAL MOD
%token <valor> ENTERO
%token <sim> IDENTIF UNDEF
%type  <valor> expres
%right IGUAL
%left MAS MENOS
%left POR DIV MOD
%right POTENCIA
%nonassoc MENOS_UNARIO

%%
programa: /*vacio*/
| bloque PUNTO
        ;
       
bloque: sentencia PUNTO_Y_COMA
| bloque sentencia PUNTO_Y_COMA
;

sentencia: /*vacio*/
|read
|write
|asigna
|expres
;

read: READ IDENTIF {read_var($2);}
;

write: WRITE IDENTIF {write_var{$2};}
;

asigna: IDENTIF IGUAL expres {$1->valor=$3; $1->tipo=IDENTIF;}
;

expres: ENTERO {$$=$1;}
| IDENTIF {if($1->tipo==UNDEF) execerror("Variable indefinida..!") $$=$1->valor;}
|expres MAS expres   {$$ = $1 + $3;}
|expres MENOS expres {$$ = $1 - $3;}
|expres POR expres   {$$ = $1 * $3;}
|expres DIV expres   {if($3==0) execerror("Division por cero..!"); $$ = $1 / $3; }
|expres MOD expres   {if($3==0) execerror("Division por cero..!"); $$ = $1 % $3; }
|expres POTENCIA expres{$$=(int) pow ($1,$3);}
|ABRE_PARENT expres CIERRA_PARENT {$$ = $2;}
|MENOS expres %prec MENOS_UNARIO {$$ = -$2;}
;
%%
void yyerror(char *s){

printf("Error sintactico en linea %d.\n",yylineno);

}

void execerror(char *literal){
fprintf(stderr; "%s en linea %d.\n" literal, yylineno);

}/*fin execerror()*/

/*lectura de variable por pantalla*/
void read_var(TablaSim *p){
printf("%s ? : ",p->nomvar);
scanf("%d",%p->valor);
p->tipo=IDENTIF;
}/*fin read_var()*/

/*muestra variable por pantalla*/
void write_var(TablaSim *p){
printf("%s = %d\n",p->nomvar, p->valor);
}/*fin write_var()*/
#90
hola a todos, tengo un problema con el codigo de un metodo de una clase porque si encuentra el elemento buscado pero no lo borra estoy usando clases a lo cual mando a enlistar una determinada estructura tal vez me podrían ayuda porque despues de llamar al metodo borrar no borra el elemento que coincide con la busqueda....!
Código (cpp) [Seleccionar]

//la estructura es

struct protesis{
   char codigo_prot[15];//guarda codigo de protesis
   int tipo_protesis; //guarda el tipo de protesis
   char fecha_ingreso[12];  //guarda fecha de ingreso
   int edad_disenho;   //edad para la que fue disenhada
};

//npnodo es un puntero de la clase nodo que estoy utilizando
//de la lista tengo punteros primero5 y actual5;


//el metodo borrar es
void lista::Borrar(int edad, int tipo) {
   npnodo anterior, nodo;

   nodo = primero5;
   anterior = NULL;
  if(primero5!=NULL){
    while(nodo!=NULL){
           if(nodo->valor.edad_disenho==edad && nodo->valor.tipo_protesis==tipo){
            if(nodo==primero5){
                primero5=primero5->siguiente;
               }//del tercer if
               else{
                anterior->siguiente=nodo->siguiente;
               }//del else
               delete(nodo);
           }//del segundo if
           anterior=nodo;
        nodo=nodo->siguiente;
      }//del while
  }//del primer if
  else{
  cout<<"\n\tLista vacia"; getch();
  }