El programa Sfk.Diary es un conversor de textos en Word, que
corresponden a anotaciones de actividades para partes de trabajo, con una
anotacion por linea, a un formato que se puede pegar en Excel,
de forma que cada concepto (empresa, proyecto, dedicacion, fechas,
observaciones, etc.) se encaje en su celda correspondiente.
El texto se copia de Word al clipboard, a este texto que esta escrito en un
lenguaje natural, aunque con ciertas reglas de escritura, este conversor,
le da un formato Ascii separador mediantes tabuladores y le añade fórmulas
y ambas cosas permite pegarlo en una plantilla Excel de control de
trabajos.
El comportamiento de transformacion de este conversor se realiza mediante
un conjunto de reglas de reescritura, unas reglas generales y otras reglas
son especificas para los diferentes conceptos de las anotaciones.
En el fichero Tol cwx.tol pueden consultarse 2 ejemplos de reglas de
reescritura de tipo general.
Para que el uso de este conversor sea muy rapido la informacion se lee y
escribe en el clipboard de forma que se obtiene copiando de Word,
se ejecuta este conversor que lee el clipboard y escribe el resultado en
el clipboard y se pega dicho resultado en Excel.
Si bien ha de hacerse notar que internamente la informacion pasa a traves
de ficheros temporales que el usuario no observa.
Para simplificar la programacion de este conversor se emplea un unico
fichero temporal y un solo clipboard por lo que este programa no soporta
ejecuciones paralelas.
Para el manejo del clipboard se utiliza una herramienta de sfk169.exe de
las Swiss File Knife, Sfk, que pueden encontrarse en la direccion
http://stahlworks.com/dev/swiss-file-knife.html. El programa sfk169.exe
no se invoca directamente, se hace a traves de 2 programas de mandatos
que permiten fijar un conjunto de caracteres que no de problemas con las
eñes y enmascarar el uso de los ficheros temporales.
Sfk.Diary conversor de notas escritas de Word a Excel a traves del clipboard
//////////////////////////////////////////////////////////////////////////////
Set allTre = RulTre << CwxTre;
//////////////////////////////////////////////////////////////////////////////
PutDescription("Reglas particulares y comunes.", allTre);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Text cwxWrd = SfkReadClipboard("error leyendo clipboard");
//////////////////////////////////////////////////////////////////////////////
PutDescription("Leer el clipboard.", cwxWrd);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Text cwxPre = CwxTimeFix(cwxWrd);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Fijar los tiempos.", cwxPre);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Text cwxTra = CwxTranslate(cwxPre, allTre);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Traducir.", cwxTra);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Text cwxXls = CwxExcel(cwxTra);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Convertir a Excel con tabs.", cwxXls);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Real cliOut = SfkWriteClipboard(cwxXls);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Guarda en el clipboard.", cliOut);
//////////////////////////////////////////////////////////////////////////////
Text WriteLn("\nSfk.Diary make: end");
//////////////////////////////////////////////////////////////////////////////
// FILE : make.tol
// AUTHOR : http://www.asolver.com
// CLASS : Excel; Word; Sfk; Regla
// VERSION : Tol 1.1.1; Tol 1.1.5; Tol 1.1.6; Tol 2.0.1
// PURPOSE : El programa Sfk.Diary es un conversor de textos en Word, que
// corresponden a anotaciones de actividades para partes de trabajo, con una
// anotacion por linea, a un formato que se puede pegar en Excel,
// de forma que cada concepto (empresa, proyecto, dedicacion, fechas,
// observaciones, etc.) se encaje en su celda correspondiente.
//
// El texto se copia de Word al clipboard, a este texto que esta escrito en un
// lenguaje natural, aunque con ciertas reglas de escritura, este conversor,
// le da un formato Ascii separador mediantes tabuladores y le añade fórmulas
// y ambas cosas permite pegarlo en una plantilla Excel de control de
// trabajos.
// _
// El comportamiento de transformacion de este conversor se realiza mediante
// un conjunto de reglas de reescritura, unas reglas generales y otras reglas
// son especificas para los diferentes conceptos de las anotaciones.
// En el fichero Tol cwx.tol pueden consultarse 2 ejemplos de reglas de
// reescritura de tipo general.
//
// Para que el uso de este conversor sea muy rapido la informacion se lee y
// escribe en el clipboard de forma que se obtiene copiando de Word,
// se ejecuta este conversor que lee el clipboard y escribe el resultado en
// el clipboard y se pega dicho resultado en Excel.
//
// Si bien ha de hacerse notar que internamente la informacion pasa a traves
// de ficheros temporales que el usuario no observa.
// _
// Para simplificar la programacion de este conversor se emplea un unico
// fichero temporal y un solo clipboard por lo que este programa no soporta
// ejecuciones paralelas.
//
// Para el manejo del clipboard se utiliza una herramienta de sfk169.exe de
// las Swiss File Knife, Sfk, que pueden encontrarse en la direccion
// http://stahlworks.com/dev/swiss-file-knife.html. El programa sfk169.exe
// no se invoca directamente, se hace a traves de 2 programas de mandatos
// que permiten fijar un conjunto de caracteres que no de problemas con las
// eñes y enmascarar el uso de los ficheros temporales.
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
// INCLUDE
//////////////////////////////////////////////////////////////////////////////
Text WriteLn("\nSfk.Diary make: begin");
//////////////////////////////////////////////////////////////////////////////
Set allInc = Include("tol/inc.tol");
//////////////////////////////////////////////////////////////////////////////
PutDescription("Inclusion de las funciones comunes y de aplicacion.", allInc);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
// CONSTANTS
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Set allTre = RulTre << CwxTre;
//////////////////////////////////////////////////////////////////////////////
PutDescription("Reglas particulares y comunes.", allTre);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
// MAKE
//////////////////////////////////////////////////////////////////////////////
Text WriteLn("\nSfk.Diary make: process");
//////////////////////////////////////////////////////////////////////////////
Text cwxWrd = SfkReadClipboard("error leyendo clipboard");
//////////////////////////////////////////////////////////////////////////////
PutDescription("Leer el clipboard.", cwxWrd);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Text cwxPre = CwxTimeFix(cwxWrd);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Fijar los tiempos.", cwxPre);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Text cwxTra = CwxTranslate(cwxPre, allTre);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Traducir.", cwxTra);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Text cwxXls = CwxExcel(cwxTra);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Convertir a Excel con tabs.", cwxXls);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
Real cliOut = SfkWriteClipboard(cwxXls);
//////////////////////////////////////////////////////////////////////////////
PutDescription("Guarda en el clipboard.", cliOut);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
// END
//////////////////////////////////////////////////////////////////////////////
Text WriteLn("\nSfk.Diary make: end");
2015 asolver.com | Aviso legal | XHTML | Δ Θ Ξ | Creative Commons | Mapa y funciones del sitio