Quiquesoft Web Server

Baja la versión personal

Ver la documentación

Indice

¿Qué es?
Comandos soportados
Operadores soportadas
Funciones soportadas
Funciones definidas por el usuario
Nuevas funciones 
Tipos de variables
Variables reservadas
RDD soportados
Uso de campos de archivos

Control de usuarios


¿Qué es?

QS-WebServer es un servidor web que soporta:

Cada uno de estos servicios es configurable para cada dominio, esto quiere decir que cada subdominio puede ser configurado para aceptar páginas XBS independientemente de si otro subdominio acepta uno o más de estos servicios, además, es posible indicar distintos puertos para un mismo subdominio o para cada uno de los subdominios, pudiendo configurar cada uno de los otros servicios a cada subdominio en distinto puerto, por ejemplo:

http://www.servidor.com para que los navegantes de internet accesen sin problemas sin ningún servicio adicional, esto quiere decir, solamente páginas HTML
http://clientes.servidor.compara que los clientes puedan accesar y levantar sus pedidos con XBS
http://www.servidor.com:2385para que accesen las sucursales con XBS

 

Algunos de los comandos soportados:

;
?
?? o = (por compatibilidad con ASP se incluyó el signo = para hacer lo mismo que ??) 
Comentarios ( //, *, /*...*/ )
APPEND BLANK
CLOSE
CLOSE ALL
DO CASE...CASE...OTHERWISE...ENDCASE
DO WHILE...LOOP...EXIT...ENDDO
FOR...NEXT
IF...ELSEIF...ENDIF
GO
GO BOTTOM
GO TO
GO TOP
REPLACE
SEEK
SELECT
SET FILTER
SKIP
USE

Operadores soportados

Casí todos los operadores soportados por Clipper, a excepción de "=" para asignación de valor, por ejemplo:

Aritméticos: +, -, *, %, etc.
Asignación en línea: :=, +=, /=, etc.
Lógicos: .AND., .OR., !, <, >, $, etc.

NOTA: Para asignar un valor a una variable no es aceptado el operador "=", siempre tiene que utilizarse ":=", "=" se utiliza únicamente para comparaciones

Funciones soportadas

Casí todas las de clipper y fivewin, a excepción de las que permiten manejo de archivos, las que muestran o crean ventanas o diálogos (algunas funciones de mensajes son soportadas, se indican abajo), ni las que comienzan con guión bajo, y tampoco soporta la función found(), que aunque es clipper, no funciona correctamente en los scripts, también soporta funciones definidas por el usuario dentro del script.

Funciones de mensaje soportadas

alert()
msgAlert()
msgInfo()
msgStop()

Funciones definidas por el usuario

Son funciones definidas por el usuario dentro del script, trabajan como las funciones estáticas de clipper, ya que solamente son visibles dentro del script en el que se escriben, se pueden declarar como FUNCTION o como PROCEDURE, ambas formas trabajan exactamente de la misma manera, por ejemplo:

<%
? str( 1 )
? min( 3, 8 )
?
x := 0
do while ++x<10
? _uno(x)
endDo

function _uno(y)
msgInfo( y )
return 10 - y
%> 

Los nombres de función permitidos no pueden empezar con número, pero pueden tener nombres largos, no tiene el limite de 10 caracteres como clipper.

Nuevas funciones

dToT( dFecha, cPlantilla ) Convierte una fecha a texto, cPlantilla es un texto en el que donde se encuentren los siguientes caracteres los convierte en:
     0d -- número del día del mes anteponiendo 0 en los días de un dígito
     dd -- numero del día del mes
     ddd -- las primeras tres letras del día de la semana en minusculas
     Ddd -- las primeras tres letras del día de la semana en comenzando con mayuscula
     DDD -- las primeras tres letras del día de la semana en mayusculas
     dddd -- el nombre del día de la semana en minusculas
     Dddd -- el nombre del día de la semana comenzando con mayuscula
     DDDD -- el nombre del día de la semana en mayusculas
     0m -- número del mes anteponiendo 0 en los meses de un dígito
     mm -- número del mes
     mmm -- las primeras tres letras del mes en minusculas
     Mmm -- las primeras tres letras del mes en comenzando con mayuscula
     MMM -- las primeras tres letras del mes en mayusculas
     mmmm -- el nombre del mes en minusculas
     Mmmm -- el nombre del mes comenzando con mayuscula
     MMMM -- el nombre del mes en mayusculas
     aa -- año con dos dígitos
     aaaa -- año con cuatro dígitos
entre( uVal, uMin, uMax ) Devuelve si uVal se encuentre en el rango entre uMin y uMax

Tipos de variables

El script maneja variables de cualquier tipo soportado por Clipper, y todas son de ámbito local, no es necesario declararlas, estas se declaran automáticamente al momento de asignarles valor.

NOTA: El máximo tamaño aceptado para un nombre de variable es de nueve caracteres y no pueden empezar con guión bajo.

Variables reservadas

Son variables que ya son utilizadas en los scripts para ser utilizado por ellos:
request - Contiene las variables recibidas por GET o POST, si se recibe la variable nombre, se lee request.nombre

RDD soportados

Se soportan los archivos de Fox (RDDCDX) y el de Clipper (RDDNTX), por default se abren los archivos con RDDCDX

Uso de campos de archivos

El manejo de los campos de los archivos es muy simple, puede usarse el nombre como si fuera una variable, siempre y cuando el campo pertenezca al área activa, o puede indicarse el alias antes de él, por ejemplo:

? nombre                       el campo nombre se encuentra en el área activa
? usuarios->nombre       se indica que el campo nombre se encuentra en el archivo con alias usuarios

Al momento de asignar un valor, si no se indica el área, solamente se pueden asignar valores a campos de máximo nueve caracteres como nombre de campo

nombre := "Quique"
usuarios->nombre := "Quique"
REPLACE nombre WITH "Quique"
REPLACE usuarios->nombre WITH "Quique"

Control de usuarios

Con las páginas XBS se pueden controlar sesiones de usuario de manera muy esto permite evitar el acceso a las páginas confidenciales a cualquier usuario que no esté autorizado, a si mismo, tambien se puede controlar el tiempo de inactividad de los usuarios para desconectarlos y tengan que volver a registrarse en caso de superar el tiempo de inactividad permitido, este tiempo es configurable por dominio.