miércoles, 22 de octubre de 2008
domingo, 19 de octubre de 2008
Manual de Java Script paso a paso
Con JavaScript se pueden construir aplicaciones que varían desde la gestión de la información corporativa interna y su publicación en Intranets hasta la gestión masiva de transacciones de comercio electrónico.
Aunque se trata de algo que se sale del alcance de este curso, es importante reseñar que JavaScript puede utilizar una tecnología propietaria de Netscape, denominada LiveConnect; con el propósito de que las aplicaciones JavaScript puedan tener acceso a aplicaciones basadas en objetos distribuidos CORBA y Java.
En cualquier caso, es importante señalar que, pese a la similitud de nombres, JavaScript no es Java.
Las aplicaciones cliente y servidor en JavaScript comparten el mismo núcleo de lenguaje. Este núcleo se corresponde con ECMA-262, el lenguaje de scripts estándar de la Oficina de Estándares de la Unión Europea, con algunos añadidos extra. Aunque Javascript de cliente y de servidor comparten el mismo conjunto base de funciones y características; en algunos casos se utilizan de distinta forma. Los componentes de JavaScript son los siguientes:
Núcleo de JavaScript (Core JavaScript). -JavaScript para Cliente. -JavaScript para Servidor. JavaScript para cliente engloba el núcleo del lenguaje y algunos elementos adicionales como, por ejemplo, una serie de objetos predefinidos que sólo son relevantes para la ejecución de JavaScript en el contexto de un cliente Web.
Así mismo, JavaScript para servidor incluye también el núcleo de lenguaje y los objetos predefinidos y funciones necesarias para el correcto funcionamiento en el marco de un servidor.
El código JavaScript para cliente se integra directamente en páginas HTML y es interpretado, en su totalidad, por el cliente Web en tiempo de ejecución. Puesto que con frecuencia es necesario ofrecer el mayor rendimiento posible, las aplicaciones JavaScript desarrolladas para servidores se pueden compilar antes de instalarlas en dichos servidores
Los clientes Web que soportan JavaScript, tales como el Netscape Navigator/Communicator (desde la versión 2.0) o el Microsoft Internet Explorer (desde la versión 3.0) pueden interpretar sentencias JavaScript colocadas en un documento HTML.
Cuando el cliente Web solicita una página de este tipo, el servidor envía por la red al cliente el contenido completo del documento; incluyendo todos los códigos HTML y las sentencias JavaScript que pudieran existir en éste.
El cliente lee entonces la página de forma secuencial, desde el principio hasta el final, representando visualmente los códigos HTML y ejecutando las sentencias JavaScript conforme avanza el proceso de lectura e interpretación.
Las sentencias JavaScript colocadas en una página Web pueden dar respuesta a eventos de usuario, tales como la pulsación de un botón del ratón (clic), la entrada de datos en un formulario y la navegación por una página.
Por ejemplo, se puede crear una función JavaScript que permita verificar que la información introducida por el usuario en un campo de entrada de datos de un formulario (número de teléfono, código postal, número de tarjeta de crédito, etc.) tienen el formato correcto. En este caso, lo importante es que, sin necesidad de realizar ninguna transmisión de datos por la red, se puede validar dicha información, mostrando al usuario un cuadro de diálogo en caso de que ésta sea incorrecta.
Se ofrece aquí un primer ejemplo en el que se ilustra la integración directa de código JavaScript en un documento HTML: Esto es texto normal de un documento HTML
docurnent.write("Texto generado desde JavaScript")
Esto es, de nuevo, HTML Como se puede observar, este ejemplo tiene la apariencia de un documento HTML estándar. La única novedad viene dada por la presencia del fragmento correspondiente al código JavaScript:
document.write('Texto generado desde Javascript")
Para poder ver el resultado de su ejecución, bastará con cargar dicho documento con cualquiera de los clientes Web antes mencionados. La salida, como se aprecia en las figuras adjuntas (para ambos clientes Web), se compone de tres líneas de texto: - Esto es texto normal de un documento HTML - Texto generado desde JavaScript - De nuevo HTML En realidad no se trata de un script útil, puesto que todo lo que ofrece (mostrar una línea de texto) se podría haber hecho en HTML directamente y, sin duda, con mayor comodidad. Sólo se trata de mostrar el funcionamiento del código.
En efecto, cualquier elemento que quede delimitado por los códigos y se considera código JavaScript . En este caso particular, se ha utilizado document.write , una de las funciones más importantes de JavaScript, que permite escribir algo en el documento actual (en este caso, el documento HTML que contiene el ejemplo). Archivos de código Javascript El atributo SRC del código SCRIPT del lenguaje HTML permite especificar un archivo que contiene el código JavaScript (en lugar de incrustar el código JavaScript en el documento HTML). Por ejemplo:
...
... Este atributo es especialmente útil para compartir funciones entre numerosos documentos HTML. Las sentencias JavaScript del interior de un código se ignoran a menos que la inclusión cause un error.
Se incluye una sentencia que muestre un mensaje de error en caso de no poder cargar el archivo de código.
Por ejemplo:
Los archivos JavaScript externos sólo pueden tener código JavaScript y ninguna sentencia HTML.
Recuerda que es la forma de insertar comentarios en HTML.
Otra forma de conocer si un cliente soporta JavaScript es insertar el código . De modo, los navegadores que no soporten JavaScript ejecutan las sentencias HTML alternativas incluidas dentro de esta etiqueta
Javascript para aplicaciones servidor
En el servidor JavaScript también está integrado en páginas HTML. Las sentencias de JS del servidor pueden realizar multitud de tareas:
-Conectarse a bases de datos relacionales de varios fabricantes.
-Compartir información entre usuarios de una aplicación.
-Acceder a los ficheros del servidor.
-Comunicarse con otras aplicaciones a través de LIVECONNECT y JAVA.
Las aplicaciones JavaScript del servidor se compilan generando archivos binarios.
Existen servicios especiales de JavaScript en el servidor:
-Servicio de Gestión de Sesiones.
-Servicio de Bases de Datos LiveWire.
JavaScript y Java.-
JavaScript
Java
Interpretado por el cliente
Copilado (bytecodes). Se descarga del servidor y se ejecuta en el cliente
Orientado a Objetos
Basado en clases
El código se integra e incrusta en documentos HTML
Se utilizan APPLETS. Se accede a ellos desde documentos
Los tipos de datos de las variables no se declaran
Es necesario definir los tipos de datos a las variables
No se puede escribir automáticamente en el disco duro
No se puede escribir automáticamente en el disco duro
Valores Javascript
JavaScript reconoce los siguientes valores:
-Valores numéricos.
-Valores lógicos (true, false)
-Cadenas de caracteres
-Valor null
-Valor no definido (undefined)
Además de estos valores, existen otros elementos propios de JavaScript como los objetos y las funciones.
JavaScript trata de forma dinámica los datos y se puede realizar la siguiente operación:
var unValor=50
Y después asignar a un Valor un valor de tipo cadena de caracteres:
unValor="Ahora est á lloviendo"
Variables.- Las variables pueden comenzar por un carácter o un subrayado bajo (_).
Cuando a una variable no se le asigna un valor, tiene valor indefinido (undefined). Si se le pone un valor, pueden ocurrir dos cosas:
-Si fue declarada sin "var", se produce un error en tiempo de ejecución.
-Si fue declarada con "var", devuelve el valor NaN (Not a Number).
Veamos un ejemplo:
function f1() {
return y-2;
}
f1() // Esta llamada a f1 provoca un error en tiempo de ejecuci ó n
function f2() {
return var y-2;
}
f2() // devuelve el valor NaN
Podemos utilizar el valor "undefined" para ponerle valor a una expresión:
var miVar;
if(miVar==undefined) {
hazunacosa(); }
else {
hazotracosa(); }
El valor "undefined" se comporta como falso cuando se usa como tipo booleano.
Las variables pueden ser:
Globales: cuando se le asigna un valor fuera de una función. El uso de "var" es opcional.
Locales: Se realiza la operación de asignación dentro de una función. El uso de "var" es obligatorio.
Por último, es bueno saber que se puede acceder a una variable de un documento HTML de un FRAME desde otro:
parent.miVar
Literales Javascript
Un literal es un valor fijo que se especifica en el script .
Existen varios tipo de literales que explicaremos a continuación:
-Arrays
-Booleanos
-Coma Flotante
-Enteros
-Objetos
-Cadenas
1.Arrays: conjunto de 0 o más expresiones encerradas entre corchetes ([]).
Ejemplo:
coches=["BMW","Mercedes","Audi","Volvo"]
Coches es un array de 4 elementos.
Podemos dejar elementos del array vacíos:
ciudades=["Madrid",,"Valladolid"]
ciudades=[,,"Pamplona"]
ciudades=["Madrid","Pamplona",,]
2.Los boleanos: tienen 2 valores booleanos: true y false.
3.Coma flotante: un literal de coma flotante puede tener las siguientes partes:
Un entero decimal
Un punto decimal(".")
Una parte fraccionaria
Un exponente ("e" o "E")
Un literal de coma flotante debe tener al menos un dígito y un punto decimal o una "e"(o "E").
Ejemplos:
3.1415
-6.23E11
.2e10
2E-10
4. Los enteros: los literales enteros se pueden expresar como:
Decimales: del 0 al 9.
Octales: comienzan por 0. Del 0 al 7.
Hexadecimales: comienzan por "0x" o "0X". Del 0 a 9 y a(o A) a f(o F).
5. Los objetos: conjunto de cero o más parejas de parejas nombre: valor.
Ejemplo:
avión= { marca:"Boeing",modelo:"747",npasajeros:"450" }
Para referirnos desde JavaScript a una propiedad del objeto avión:
document.write(avión.modelo)
6.Las cadenas: el literal de cadena es una secuencia de caracteres entre los signos de comillas simples o dobles (¿ o ¿).
En un literal de tipo cadena podemos utilizar los métodos del objeto String .
Existe un conjunto de caracteres que comienzan por \ . Algunos de ellos son:
\b: retroceso
\f: avance de línea
\n: salto de línea
\r: return
\t: tabulación
\' , \", \\ : los símbolos ', " y \ respectivamente.
Objetos Javascript
Definimos como objeto, una entidad con una serie de propiedades que definen su estado y unos métodos (funciones) que actúan sobre esas propiedades.
La forma de acceder a una propiedad de un objeto es la siguiente:
nombreobjeto.propiedad
También se puede referir a una propiedad de un objeto por su índice en la creación. Los índices comienzan por 0:
casa[0]=casa.localidad
casa[1]=casa.superficie
casa[2]=casa.precio
Vamos a crear un objeto con una serie de propiedades. La forma de crear un objeto es la siguiente:
-Crear una función constructora
function casa(localidad,superficie,precio) {
this.localidad=localidad
this.superficie=superficie
this.precio=precio
}
Instanciar objetos con "new"
casa1=new casa("Pamplona",90,15000000)
casa2=new casa("Bilbao",110,23000000)
Dos observaciones importantes:
-Gracias a new creamos nuevos objetos con las propiedades de los ya creados.
"this" hace referencia al propio objeto.
-A un objeto se le pueden seguir añadiendo propiedades tras ser definido, aunque es una práctica que no se aconseja, pues todos los objetos ya creados hasta entonces añaden también esa propiedad con valor nulo. Para ello se utiliza la palabra prototype:
casa.prototype.año=null
casa.año="1980"
Métodos Javascript
Otra forma de crear objetos de forma literal es la siguiente:
nombreobjeto= { propiedad1:valor;propiedad2:valor;.....propiedadN:valor }
Finalmente, sólo añadir que una propiedad puede estar formada por varias subpropiedades de modo que, para referenciarlas deberemos seguir una notación similar a la anterior:
nombreobjeto.nombrepropiedad.nombreSubpropiedad
Ejemplo:
casa1= { localidad:"Pamplona",precio:15000000,superficie: { interior:90,terraza:10 } }
En este ejemplo, casa1 es un objeto en el que, la propiedad "superficie", está a su vez formada por dos subpropiedades: interior y terraza.
Cómo se crean métodos.- Veamos ahora cómo se crean los métodos:
Un método no es más que una función asociada a un tipo de objeto:
objeto.nombremétodo=nombrefunción
Veamos un ejemplo. Este método sirve para mostrar las propiedades de un objeto casa:
function VerCasa() {
var mostrar="La casa está en " + this.localidad + ", tiene " + this.superficie +" m2 y cuesta " +this.precio +" ptas."
return(mostrar)
}
Si en la función constructora de casa añadimos:
this.VerCasa=VerCasa
Ya tenemos un método llamado VerCasa que nos permite ver las propiedades de cualquier objeto de tipo casa.
Una vez creado un objeto, si lo que queremos es eliminarlo, sólo tenemos que llamar al operador "delete".
delete casa
Este operador es interesante, porque, si consigue eliminar el objeto, devuelve "true" si se le pone valor, por lo que se puede saber cuando un objeto ha sido borrado satisfactoriamente.
Operadores Javascript
Existen varios tipos de operadores en JavaScript:
1.Asignación: este tipo de operador se utiliza para asignar valores a las variables.
var resultado=50
Asigna a la variable "resultado" el valor 50.
Existen abreviaturas de algunas operaciones de asignación:
x + = y
x = x + y
x - = y
x = x - y
x * = y
x = x * y
x % = y
x = x % y
x / = y
x = x / y
2.Comparación: en JavaScript, se pueden comparar variables de distinto tipo, pues es capaz de forzar conversiones:
== Devuelve true si son iguales. Fuerza conversiones de tipo.
!= Devuelve true si son distintos. Fuerza conversiones de tipo.
=== Devuelve true si son iguales y del mismo tipo.
!== Devuelve true si son distintos o de distinto tipo.
> Devuelve true si la variable de la izquierda es mayor que la variable de la derecha
<>= Devuelve true si la variable de la izquierda es mayor o igual que la variable de la derecha
<= Devuelve true si la variable de la izquierda es menor o igual que la variable de la derecha 3. Aritméticos: los operadores aritméticos, a partir de varios operandos, devuelven un solo valor; resultado de la operación realizada con los anteriores operandos. En JavaScript existe notación postfija y prefija, por lo que variable++ y ++variable son dos formas distintas de incrementar una variable. En primer lugar, se procesa la variable, y luego se incrementa. Sin embargo, en el segundo caso, primero se incrementa la variable y después se procesa. % Binario: devuelve el resto de una división. ++ Unitario: incrementa el valor de la variable. -- Unitario: disminuye el valor de una variable. - Unitario: cambia el signo de una variable. 4.Lógicos: los operadores lógicos devuelven un valor binario. && AND OR ! NOT Es importante saber que si en una evaluación ya se conoce el resultado, no se pone valor a los demás términos: true devuelve true. false && devuelve false. Condicionales Javascript Las sentencias en JavaScript se dividen en varios tipos: 1.Condicionales: las sentencias condicionales sin "if" y "switch" . La sintaxis de "if" es la siguiente: if(condición) { acciones } else { acciones } Ejemplo: var i=5 if(i>5) {
document.write("i es mayor que 5")
}
else {
document.write("i es menor o igual que 5")
}
La sentencia "switch" toma una variable, y la evalúa según unos posibles valores:
switch(variable) {
case valor1:
acciones1;
break;
case valor2:
acciones2;
break;
.........
.........
case valorN:
accionesN;
break;
default acciones;
}
Veamos cada una de las partes:
case valor1: en el caso de que la variable tenga el valor "valor1", realizará las acciones "acciones1".
break: si no se incluye esta sentencia después de cada "case", se realizarían todos los cases del "switch" hasta el final. De este modo, sólo se realizarán las acciones referentes al "case" concreto.
En este apéndice vamos a estudiar algunos ejemplos de código JavaScript que podemos adaptar a nuestras páginas. En estos ejemplos aparecerán también objetos y clases nuevas que no hemos visto a lo largo del curso, para extender el conocimiento que ya tenemos del código de scripts. Caso 1: Como conseguir que un enlace gane o pierda el foco de entrada.
a:active {color:blue}
function getfocus()
{
document.getElementById('w3s').focus();
}
function losefocus()
{
document.getElementById('w3s').blur();
}
Visita Google.com //solo por presentacion
getElementById es una función de document que permite llamar a un objeto concreto de la página. Esta es la forma normal de acceder a los elementos de la página, aunque como en el caso de los formularios, también es posible acceder a algunos elementos directamente usando sus nombres como propiedades de objetos. Caso 2: seleccionar el texto de un cuadro de texto y darle el foco.
function setfocus()
{
document.forms[0].txt.select();
document.forms[0].txt.focus();
}
Como podemos ver, es posible conseguir el contenido de los formularios de la página por medio de la matriz forms[] de document. Caso 3: obtener y cambiar la URL de un formulario.
function getAction()
{
var x=document.forms.myForm;
alert(x.action);
}
function changeAction(action)
{
var x=document.forms.myForm;
x.action=action;
alert(x.action);
}
En este ejemplo podemos ver otra forma de utilizar los formularios en el código JavaScript. Caso 4: como actualizar dos iframes al mismo tiempo.
function twoframes()
{
document.all("frame1").src="frame_c.htm";
document.all("frame2").src="frame_d.htm";
}
Escríbanse las cuatro páginas de los frames que se especifican y probar. Es muy sencillo darse cuenta de que la función all nos permite acceder a los distintos elementos de la página, al igual que lo hemos hecho antes de otras formas.
Caso 5: conocer los datos del navegador.
document.write("Navegador: ");
document.write(navigator.appName + "");
document.write("Versión del navegador: ");
document.write(navigator.appVersion + "");
document.write("Código: ");
document.write(navigator.appCodeName + "");
document.write("Plataforma: ");
document.write(navigator.platform + "");
document.write("Cookies habilitadas: ");
document.write(navigator.cookieEnabled + "");
document.write("Cabecera de agente de usuario del navegador: ");
document.write(navigator.userAgent + "");
Caso 6: conocer los datos relacionados con la pantalla.
document.write("Resolución de pantalla: ");
document.write(screen.width + "*" + screen.height);
document.write("");
document.write("Area visible disponible: ");
document.write(screen.availWidth + "*" + screen.availHeight);
document.write("");
document.write("Resolución de color: ");
document.write(screen.colorDepth);
document.write(" bits");
Caso 7: refrescar el contenido de una página.
function refresh()
{
window.reload();
}
Caso 8: Generar un reloj a intervalos de un segundo.
var intval=""
function start_Int()
{
if(intval=="")
{
intval=window.setInterval("start_clock()",1000);
}
else
{
stop_Int();
}
}
function stop_Int()
{
if(intval!="")
{
window.clearInterval(intval);
intval="";
document.formu.tiempo.value="Tiempo detenido";
}
}
function start_clock()
{
var d=new Date();
var sw="am";
var h=d.getHours();
var m=d.getMinutes() + "";
var s=d.getSeconds() + "";
if(h>12)
{
h-=12;
sw="pm";
}
if(m.length==1)
{
m="0" + m;
}
if(s.length==1)
{
s="0" + s;
}
document.formu.tiempo.value=h + ":" + m + ":" + s + " " + sw;
}
Este ejemplo actualiza el contenido del cuadro de texto cada segundo. Pulsa "Empezar" para iniciar la función setInterval. Pulsa "Parar" para detener el tiempo con la función clearInterval.
Estudiese bien este ejemplo. La variable intval contiene un valor que setInterval genera, y con el que podremos detener el intervalo usándolo en la llamada a clearInterval. Especialmente interesante es la función start_clock, que formatea la hora para su visualización.
ejemplo sencillo de Java Script
viernes, 17 de octubre de 2008
Manual de Reporting Services
Definición de Reporting Services
una plataforma de reportes basada en servidores, la misma que puede ser empleada para crear y administrar reportes tabulares, de matrices, gráficos y de libre formato, la información de estos reportes pueden provenir de diferentes orígenes de datos. Los reportes que se definen pueden ser administrados a través de una conexión basada en Web.
Reporting Services provee servicios, herramientas e interfaces de programación (API), aunque no es necesario ser desarrollador para usarlo.
Siempre que se piensa en elaborar reportes, tenemos que distinguir claramente algunos aspectos:
1) Definición del reporte, momento en que el autor del reporte define los datos y la manera de presentación de estos. En esta etapa normalmente hay que definir conexiones a los distintos orígenes de datos para ver de donde obtener los resultados que debe reflejar el reporte.
2) Administración del reporte, esta referido al hecho que en las organizaciones actuales tenemos distintas categorías de usuarios como por ejemplo los gerentes, los usuarios de servicio al cliente, etc. Por lo tanto, es importante definir quienes serán los usuarios del reporte, para ello hay que publicar los reportes.
3) Entrega del reporte, es muy común en las organizaciones que muchos reportes sean requeridos de manera periódica, por ejemplo el reporte de ventas diarias debe estar en la oficina del Gerente de Ventas todas las tardes a las 5 pm., o un reporte de inventario todos los fines de semana, podriamos entonces aprovechar distintos servicios como el de mensajeria para que estos reportes lleguen a los usuarios requeridos.
Las tres acciones, mencionadas anteriormente, conforman lo que se denomina “El Ciclo de Vida de un reporte”, SQL Server Reporting Services nos otorga todas las facilidades necesarias para que podamos cubrir cada una de los aspectos asociados a la creación, administración y distribución de los reportes.
Ventajas de Reporting Services:
· Una de las principales, es que se cuenta con una interface Web para lo que es la administración de los reportes, desde esta interface se puede determinar en que formato debe llegar el reporte, es decir, podemos decidir que el reporte llegue a una de las gerencias en formato PDF y para el departamente de consolidación y validación de datos podría enviarse la información en formato XML.
· Cuenta con un lenguage de especificación estándar denominado Report Definition Language o simplemente RDL, el cual es un lenguaje de formato XML, que se encarga de definir el reporte.
· Con SQL Server Reporting Services, podemos conectarnos a cualquier repositorio de datos, a través de un .NET Data Provider, un proveedor OLE DB provider o uno de tipo ODBC.
· Para la distribución, los usuarios pueden acceder a los reportes en base a la infraestructura existente. Es decir, que los usuarios pueden acceder a los reportes a través de una barra de herramientas en el browser. Los reportes son accesados desde un repositorio centralizado, presentado como un folder en orden jerarquico.
· Otra de las grandes características de Reporting Services, es que puede distribuir el reporte en distintos formatos, como hojas de excel, documentos pdf, texto, XML, etc.
· La arquitectura de Reporting Services, permite a los desarrolladores preparar aplicaciones personalidas que accedan a los reportes a través de una API que esta expuesta como un Web service.
Instalación de Reporting Services:
Para trabajar con Reporting Services debe contar con los siguientes pre-requisitos:
Hardware
Cualquier procesador Pentium II Intel o compatible de 500 MHz.
256 Mb de RAM, preferible 512 Mb.
Para el Report Server se requiere 50 Mb de espacio de disco libre, para el Report Designer se requiere 30 Mb y para los ejemplos se requiere de 145 Mb.
Software
Para el Report Server se requiere de un Web Server con ASP.NET e Internet Information Services (IIS) 5.0 o superior.
MDAC 2.6
Service Pack 3a de SQL Server 2000.
http://www.microsoft.com/downloads/details.aspx?FamilyId=90DCD52C-0488-4E46-AFBF-ACACE5369FA3&displaylang=en
Si usas Windows 2003, el servidor debe estar configurado como Application Server.
Si trabajas con Windows 2003 debe tener resuelto el QFE 859.
(http://support.microsoft.com/default.aspx?scid=kb;en-us;821334).
Ejecutando el Instalador:
Una vez que cumpla con los pre-requisitos, estará listo para poder instalar Reporting Services, para ello realice la siguiente secuencia:
1. Asegúrese de ingresar al sistema con credenciales de Administrador, luego inserte el disco de instalación de Reporting Services y haga doble clic en Setup.exe.
2. Acepte las condiciones de de licenciamiento y presione el Next.
3. Aparece un diálogo que muestra el estado de recopilación de información necesaria para instalar Reporting Services, luego presione Next.
4. Aparece un diálogo donde se muestra un mensaje que confirma la existencia de los pre-requisitos, presione Next.
5. Aparece un diálogo donde se muestra un mensaje que confirma la existencia de los pre-requisitos, presione Next. Aparece el mensaje del Windows Installer y a continuación un dialogo, presione Next.
6. Ingrese la información de registro, luego pulse Next.
7. Seleccione los componentes que desea instalar en su equipo, luego presione Next.
8. Aparece un diálogo donde tendrá que elegir las credenciales para la instalación (debe crear una cuenta de Dominio e incluirla en el grupo Domain Administrators) complete de acuerdo a la siguiente pantalla:
9. Luego de pulsar Next, aparece un diálogo que muestra cuales son los directorios virtuales a crearse, presione Next.
10. Debe observar un diálogo que permite seleccionar la instancia de SQL Server, que se empleará con Reporting Services, presiona Next.(SQL creará una BD para el ReportServer y ReportServer TempDB)
11. A continuación debe ingresar la información necesaria para enviar los reportes a través de email.
12. Especifique la instancia SQL, donde se creará la BD de ejemplo (AdventureWorks), presione Next.
13. Seleccione el modo de licenciamiento, presione Next.
14. Presione el botón Install.
Verificar la instalación del Reporting Services
Para verificar la correcta instalación del servicio puede realizar cualquiera de los siguientes pasos:
a) Abrir Control Panel, seleccione Administrative Tools y luego Services. Verifique que el servicio Report Server se encuentre en estado Starter.
b) Abrir el Internet Explorer y colocar el siguiente URL: http://
c) Abra el Internet Explorer e ingrese el siguiente URL: http://
y el otro reporte es por medio de visual.net en el cual el objetivo es el mismo.
Data source (origen de datos):
Que tipo de conexión
Conectar el servidor
Probar conexion
Cual es la consulta que ud. Quiere ejecutar para el reporte
Como quiere mostrar los datos tubular
Cuales son los disponibles o cuales quiere mostrar,,se agrega los que se necesiten
Pestaña vista de diseño, se puede modificar todo, el titulo,m los tamaños,, aparecen herramientas que s epueden usar
Ejemplo de reporte en PDF
La importancia de un reporte de 100 o 2000 registros para identificar debemos de agregar campos o ID, titulos
Por expresión se agrega el pie de pagina previamente ingrasando el text box
.
Muchos objetos mas en expresión
Manual de HTML
Un documento escrito en HTML contendría básicamente las siguientes etiquetas :
Indica el inicio del documento.
Inicio de la cabecera.
Final del título del documento.
Final de la cabecera del documento.
Inicio del cuerpo del documento.
Final del cuerpo del documento.
Final del documento.
http://www.webtaller.com/manual-html/index.hml
Donde ....
http:// es el indicador de pagina Web
www.webtaller.com es el Dominio (nombre) del ordenador
/manual-html/ es el Directorio dentro del ordenador
index.html es el Fichero que contiene la página Web
La etiqueta indica el inicio y final de nuestra pagina Web. Será entre el inicio y el final de esta etiqueta donde pongamos los contenidos de nuestra página, textos, gráficos, enlaces, etc.... Esta etiqueta tiene una serie de parámetros opcionales que nos permiten indicar la "apariencia" global del documento :
background= "nombre de fichero gráfico"
Indica el nombre de un fichero gráfico que servirá como "fondo" de nuestra página. Si la imagen no rellena todo el fondo del documento, esta será reproducida tantas veces como sea necesario.
bgcolor = "código de color"
Indica un color para el fondo de nuestro documento. Se ignora si se ha usado el parámetro background.
text = "código de color"
Indica un color para el texto que incluyamos en nuestro documento. Por defecto es negro.
link = "código de color"
Indica el color de los textos que dan acceso a un Hiperenlace. Por defecto es azul.
vlink = "código de color"
Indica el color de los textos que dan acceso a un Hiperenlace que ya hemos visitado con nuestro navegador. Por defecto es purpura.
El código de color es un numero compuesto por tres pares de cifras hexadecimales que indican la proporcion de los colores "primarios", rojo, verde y azul. El codigo de color se antecede del símbolo #.
Ejemplos:
#000000 - Negro
#FF0000 - Rojo
#00FF00 - Verde
#0000FF - Azul
#FFFFFF - Blanco
El primer par de cifras indican la proporción de color Rojo, el segundo par de cifras la proporcion de color Verde y las dos ultimas la proporcion de color Azul. Cada par de cifras hexadecimales nos permiten un rango de 0 a 255. Combinando las proporciones de cada color primario obtendremos diferentes colores.
ATRIBUTOS DEL TEXTO
Para indicar atributos del texto (negrilla, subrayado, etc...) tenemos varias etiquetas. Algunas de ellas no son reconocidas por determinados navegadores de Internet, es por ello que segun el navegador que este vd. utilizando, verá el resultado correctamente o no.
Atributo Etiqueta Ejemplo Resultado
Negrita Texto de prueba Texto de prueba
Cursiva Texto de prueba Texto de prueba
Teletype Texto de prueba Texto de prueba
Subrayado Texto de prueba Texto de prueba
Tachado Texto de prueba Texto de prueba
Parpadeo Texto de prueba
Superindice Texto de prueba Texto de prueba
Subindice Texto de prueba Texto de prueba
Por otro lado la etiqueta nos permite variar el tamaño, el color, y el tipo de letra de un texto determinado. Utiliza para ello los parámetros size , bgcolor y face .
size = valor Da al texto un tamaño en puntos determinado. size = + / - valor Da al texto un tamaño tantas veces superior (+) o inferior (-) como indique el valor. color = "codigo de color" Escribe el texto en el color cuyo codigo se especifica. face = "nombre de font" Escribe el texto en el tipo de letra especificado. Si este tipo de letra no existe en el ordenador que "lee" la pagina se usara el font predeterminado del navegador. Ejemplo Se veria como
Texto de prueba Texto de prueba
Existen otras etiquetas que realizan las mismas operaciones que las antes vistas en los atributos del texto.
Ejemplo Se veria como
Texto de prueba Texto de prueba
Para incluir comentarios en la página Web se utiliza la etiqueta .
IMAGENES
Hasta el momento hemos visto como se puede escribir texto en una pagina Web, así como sus posibles formatos. Para incluir una imagen en nuestra página Web utilizaremos la etiqueta . Hay dos formatos de imagenes que todos los navegadores modernos reconocen. Son las imágenes GIF y JPG . Cualquier otro tipo de fichero gráfico o de imagen (BMP, PCX, CDR, etc...) no será mostrado por el navegador, a no ser que disponga de un programa externo que permita su visualización.
La etiqueta tiene varios parámetros :
src = "imagen" Indica el nombre del fichero gráfico a mostrar.
alt = "Texto" Mostrara el texto indicado en el caso de que el navegador utilizado para ver la página no sea capaz de visualizar la imagen.
lowsrc = "imagen" Muestra una segunda imagen "superpuesta" sobre la primera una vez se carga la pagina. Este parametro no es reconocido por la totalidad de los navegadores ya que esta en estudio su aplicacion, asi que en la mayoria de los casos sera ignorado mostrandose solo la primera imagen ( src ). En Netscape muestra la imagen indicada por lowsrc en primer lugar, y posteriormente muestra la imagen indicada por src . Si las imagenes son iguales pero tienen distinta "resolucion" se conseguirá un efecto tipo "Fade". Si las imagenes son de distinto tamaño la imagen indicada en src se redimensionara al tamaño indicado por la imagen indicada enlowsrc
align = TOP / MIDDLE / BOTTOM Indica como se alineará el texto que siga a la imagen. TOP alinea el texto con la parte superior de la imagen, MIDDLE con la parte central, y BOTTOM con la parte inferior.
border = tamaño Indica el tamaño del "borde" de la imagen. A toda imagen se le asigna un borde que será visible cuando la imagen forme parte de un Hyperenlace.
height = tamaño Indica el alto de la imagen en puntos o en porcentaje. Se usa para variar el tamaño de la imagen original.
width = tamaño Indica el ancho de la imagen en puntos o en porcentaje. Se usa para variar el tamaño de la imagen original.
hspace = margen Indica el numero de espacios horizontales, en puntos, que separarán la imagen del texto que la siga y la anteceda.
vspace = margen Indica el número de puntos verticales que separaran la imagen del texto que le siga y la anteceda.
ismap / usemap Indica que la imagen es un MAPA. Veremos estos parametros mas adelante en este manual.
Ejemplo Se vería como
Si el navegador no pudiese visualizar el gráfico.....
ENLACES
La característica principal de una página Web es que podemos incluir Hiperenlaces. Un Hiperenlace es un elemento de la página que hace que el navegador acceda a otro recurso, otra página Web, un archivo, etc...
Para incluir un Hyperenlace se utiliza la etiqueta
Ejemplo Se vería como
Pulse para ir a la página de Microsoft
Si situamos el ratón encima de la frase y pulsamos, el navegador accederá a la página Web indicada por el parámetro href , es decir, accederá a la página situada en http://www.microsoft.com/
Lo mismo podríamos hacer con un gráfico.
Ejemplo Se veria como
Para buscar en Internet :
Para buscar en Internet :
Se accedería a la pagina situada en http://www.yahoo.com/.
Un Hiperenlace también puede llevarnos a una zona de nuestra página. Para ello debemos marcar en nuestra pagina las diferentes secciones en las que se divide. Lo haremos con el parametro name .
Ejemplo:
Esta instrucción marca el inicio de una sección dentro de nuestra página. La seccion se llamará seccion1 . Para hacer un enlace a esta sección dentro de nuestra página lo haríamos de la siguiente forma :
Primera Parte
O también : Primera Parte
Un Hiperenlace puede hacerse a cualquier tipo de fichero. Con las etiquetas anteriores hemos visto como hacer enlaces a páginas Web o secciones dentro de una página web, pero podríamos hacer un Hiperenlace a un grupo de noticias, o a otro servicio de Internet.
Ejemplo:
Noticias de actualidad
Asimismo podemos hacer que el Hiperenlace de como resultado el envío de un correo electrónico a una dirección de correo determinada.
Ejemplo:
Envíame tus sugerencias
También podemos realizar un Hiperenlace a un fichero cualquiera. En este caso el navegador intentará "ejecutar" el fichero, y si no puede hacerlo nos preguntará si deseamos grabarlo en nuestro ordenador. Esta es una forma sencilla de permitir a los visitantes de nuestra página copiar ficheros a su ordenador.
Pulsa aqui para llevarte una copia del manual.
La imagen a mostrar puede encontrase en el mismo lugar (URL) que la pagina Web. Si este no fuera el caso, el nombre de la imagen ha de contener la URL donde se encuentre la imagen.
TABLAS
Las tablas nos permiten representar cualquier elemento de nuestra página (texto, listas, imágenes, etc...) en diferentes filas y columnas separadas entre si. Es una herramienta muy util para "ordenar" contenidos de distintas partes de nuestra página. La tabla se define mediante la etiqueta
border = num. Indica el ancho del borde de la tabla en puntos.
cellspacing = num Indica el espacio en puntos que separa las celdas que estan dentro de la tabla.
cellpadding = num Indica el espacio en puntos que separa el borde de cada celda y el contenido de esta.
width = num ó % Indica la anchura de la tabla en puntos o en porcentaje en función del ancho de la ventana del navegador. Si no se indica este parámetro, el ancho se adecuará al tamaño de los contenidos de las celdas.
height = num ó % Indica la altura de la tabla en puntos o en porcentaje en función del alto de la ventana del navegador. Si no se indica este parámetro, la altura se adecuará a la altura de los contenidos de las celdas.
bgcolor = codigo de color Especifica el color de fondo de toda la Tabla.
Para definir las celdas que componen la tabla se utilizan las etiquetas
align = LEFT / CENTER / RIGHT / JUSTIFY Indica como se debe alinear el contenido de la celda, a la izquierda (LEFT), a la derecha (RIGHT), centrado (CENTER) o justificado (JUSTIFY).
valign = TOP / MIDDLE / BOTTOM Indica la alineación vertical del contenido de la celda, en la parte superior (TOP), en la inferior (BOTTOM), o en el centro (MIDDLE).
rowspan = num Indica el número de filas que ocupará la celda. Por defecto ocupa una sola fila.
colspan = num Indica el número de columnas que ocupará la celda. Por defecto ocupa una sola columna.
width = num ó % Indica la anchura de la columna en puntos o en porcentaje en función del ancho de la ventana del navegador. Si no se indica este parámetro, el ancho se adecuará al tamaño de los contenidos. Este parametro solo funciona en los navegadores modernos.
bgcolor = codigo de color Especifica el color de fondo del elemento de la Tabla. Para indicar que acaba una fila de celdas se utiliza la etiqueta
Un Mapa es una imagen que permite realizar diferentes Hiperenlaces en función de la "zona" de la imagen que se pulse. Las etiquetas para crear mapas son y .
La etiqueta
Manual de Css paso a paso
• ¿Qué es CSS?
• Estilos de resolver un problema común
Etiquetas HTML se diseñaron originalmente para definir el contenido de un documento. Se suponía que decir "Esto es una cabecera", "Este es un párrafo", "Esta es una mesa", mediante el uso de etiquetas como y así sucesivamente. La presentación del documento tenía que ser atendidos por el navegador, sin necesidad de utilizar etiquetas de cualquier formato.
Como los dos principales navegadores - Netscape e Internet Explorer - continuó añadir nuevas etiquetas HTML y los atributos (como la etiqueta y el atributo de color) para la especificación de HTML original, se hizo cada vez más difícil para crear sitios Web donde el contenido de documentos HTML fue claramente separados de la presentación del documento de diseño.
Para resolver este problema, la World Wide Web Consortium (W3C) - sin ánimo de lucro, la normativa de consorcio, responsable de la normalización de HTML - creado ESTILOS además de HTML 4,0.
Todos los principales navegadores apoyo Hojas de Estilo en Cascada. ________________________________________
Hojas de Estilo puede ahorrar una gran cantidad de trabajo
Estilos de hojas de definir cómo son los elementos HTML que se mostrará, al igual que la fuente etiqueta y el atributo de color en HTML 3,2. Los estilos son normalmente guardados en exteriores. Css archivos. Exteriores hojas de estilo le permiten cambiar la apariencia y disposición de todas las páginas en su Web, con sólo editar un único documento CSS!
CSS es un gran avance en diseño de páginas Web, ya que permite a los desarrolladores el control de estilo y diseño de múltiples páginas Web al mismo tiempo. Como desarrollador web puede definir un estilo para cada elemento HTML y aplicarlo a la mayor cantidad de páginas web como quieras. Para hacer un cambio global, basta con cambiar el estilo, y todos los elementos en la Web se actualizan automáticamente.
Orden en cascada
¿Qué estilo se usa cuando hay más de un estilo especificado por un elemento HTML?
1. Navegador por defecto 2. Exterior de hojas de estilo 3. Interior de hojas de estilo (dentro de la etiqueta ) 4. Inline estilo (dentro de un elemento HTML)
Por lo tanto, una línea de estilo (dentro de un elemento HTML) tiene la máxima prioridad, lo que significa que se anularán un estilo declaran dentro de la etiqueta , en una hoja de estilo externa, o en un navegador (un valor por defecto).
Sintaxis
La sintaxis CSS se compone de tres partes: un selector, una propiedad y un valor:
selector (propiedad: valor)
El selector es normalmente el elemento HTML / etiqueta que desea definir, la propiedad es el atributo que desea cambiar, y cada propiedad puede tener un valor. La propiedad y el valor están separados por dos puntos, y rodeado de llaves: cuerpo (color: negro)
Nota: Si el valor es múltiple, es decir, poner las comillas alrededor del valor: p (font-family: "sans serif")
Nota: Si desea especificar más de una propiedad, usted debe separar cada propiedad con un punto y coma. El ejemplo siguiente muestra cómo definir un centro alineado apartado, con un texto de color rojo: p (text-se suman: centro; color: rojo)
Para realizar las definiciones de estilo más legible, se puede describir una propiedad en cada línea, como este: p (text-se suman: centro; color: negro; font-family: Arial)
Puede grupo de selectores. Separe cada selector con una coma. En el siguiente ejemplo hemos agrupado todos los elementos de cabecera. Todos los elementos de cabecera se mostrará en verde el color del texto: H1, H2, H3, H4, h5, h6 (color: green) ________________________________________
Con el selector de clase se pueden definir diferentes estilos para el mismo tipo de elemento HTML.
Decir que le gustaría tener dos tipos de párrafos de su documento: uno alineados a la derecha párrafo, y un centro alineados párrafo. Aquí es cómo puede hacerlo con los estilos:
p.right (text-se suman: el derecho p.center) (texto-se suman: center) Tienes que utilizar el atributo de clase en su documento HTML:
Este párrafo se alineados a la derecha. Este párrafo será centro alineados. Nota: Para aplicar más de una clase dada por elemento, la sintaxis es la siguiente:
Se trata de un párrafo.
El párrafo anterior será de estilo de la clase "centro" y la clase "negrita". También puede omitir el nombre de etiqueta en el selector de definir un estilo que será utilizada por todos los elementos HTML que tienen una cierta clase. En el siguiente ejemplo, todos los elementos HTML con class = "centro" será centro alineados: . centro (text-se suman: center)
En el código que aparece a continuación, tanto el elemento h1 y el p elemento han class = "centro". Esto significa que ambos elementos se seguirán las normas en el ". Centro" selector:
Esta partida será el centro alineados
Este párrafo también será centro alineados. NO iniciar un nombre de clase con un número! No va a trabajar en Mozilla / Firefox.
También puede aplicar estilos a elementos HTML con los atributos particulares. El estilo imperio continuación se ajusten a todos los elementos de entrada que tienen un tipo de atributo con un valor de "texto": de entrada [type = "text"] (fondo-color: azul)
También puede definir estilos para elementos HTML con el selector de id. El selector de id se define como una #. El estilo imperio continuación coincidir con el elemento que tiene un atributo id con un valor de "verde": # verde (color: green) El estilo imperio continuación coincidir con el p elemento que tiene un id con un valor de "para1": p # (para1 texto-se suman: centro; color: rojo) No inicie un nombre de identificación con un número! No va a trabajar en Mozilla / Firefox.
Un estudio externo de hoja de estilo es ideal cuando el estilo se aplica a muchas páginas. Con una hoja de estilo externa, puede cambiar el aspecto de todo un sitio Web de cambiar un archivo. Cada página debe enlazar con la hoja de estilos utilizando la etiqueta . El etiqueta va dentro de la sección de cabecera:
rá el estilo de las definiciones de archivo mystyle.css, y el formato de documento de acuerdo a ella.
Un estudio externo de hoja de estilo se pueden escribir en cualquier editor de texto. El archivo no debe contener ninguna etiqueta HTML. Su hoja de estilos debe ser guardada con extensión. Css extensión. Un ejemplo de un archivo de hojas de estilo se muestra a continuación: hr (color: sienna) p (margin-left: 20px) (cuerpo-imagen de fondo: url ( "images/back40.gif")) No deje espacios entre el valor de la propiedad y las unidades! Si utiliza "margin-left: 20 px" en vez de "margin-left: 20px" que sólo funciona correctamente en IE6 pero no funciona en Mozilla / Firefox o Netscape.
Interior hoja de estilo
Una hoja de estilo interno debe ser utilizada cuando un único documento tiene un estilo único. Para definir los estilos internos en la sección de cabecera mediante el uso de la etiqueta
El navegador ahora leer las definiciones de estilo y formato del documento de acuerdo a ella. Nota: El navegador normalmente ignora las etiquetas desconocidas. Esto significa que un viejo navegador que no soporta estilos.
Estilos Inline
Una línea de estilo pierde muchas de las ventajas de hojas de estilo mediante la mezcla de contenido con presentación. Use este método con moderación, como cuando un estilo se aplica a una sola aparición de un elemento.
Para utilizar los estilos en línea que utiliza el atributo de estilo en la pertinente etiqueta. El estilo atributo puede contener cualquier propiedad CSS. El ejemplo muestra cómo cambiar el color y el margen izquierdo de un párrafo:
Esto es un párrafo
Si algunas propiedades se han establecido para el mismo selector en diferentes hojas de estilo, los valores serán heredadas de la más específica de hojas de estilo.
Por ejemplo, una hoja de estilo externa tiene estas propiedades para el selector h3: h3 (color: rojo; texto-se suman: a la izquierda; font-size: 8 puntos)
Y una hoja de estilo interna tiene estas propiedades para el selector h3: h3 (text-se suman: el derecho; font-size: 20pt)
Si la página interior con la hoja de estilo también enlaces externos a la hoja de estilo para las propiedades h3 serán los siguientes: color: rojo; texto-se suman: el derecho; font-size: 20pt