viernes, 26 de abril de 2019

Metodologías Ágiles en VFP de las Historias de Usuario al código - ppt descargar

Metodologías Ágiles en VFP de las Historias de Usuario al código - ppt descargar: ¿Quién soy? Martín Salías Arquitecto de Software Latinoamérica, USA, Canadá, Australia y Escandinavia Microsoft Consulting Services Microsoft MVP Editor en Jefe Universal Thread Magazine (3 años) Level Extreme .Net Magazine (actual) Miembro de la Agile Alliance Orador y colaborador de MSDN Cono Sur

viernes, 5 de abril de 2019

Exclusiones de Archivos en un .gitignore

Aquí un archivo .gitignore que contiene los tipos de extensiones que debemos excluír del control de versiones con git.

Copia el siguiente contenido y pega en un archivo que deberás guardar en tu carpeta raíz como .gitignore

NOTA: debes usar un editor de textos como notepad++ ya que windows no te dejará guardar un archivo sin nombre.


# Contine la lista de los archivos y carpetas a ignorar
# Ignorar proyecto
*.pjx
*.PJX
*.pjt
*.PJT
# Ignorar todos los programas compilados, fomularios, menues y clases
*.scx
*.sct
*.SCX
*.SCT
*.mnt
*.MNT
*.mnx
*.MNX
*.mpr
*.MPR
*.vct
*.VCT
*.vcx
*.VCX
*.fxp
*.FXP
# Ignorar bases de datos, tablas, indices
*.dbf
*.DBF
*.cdx
*.CDX
*.dbc
*.DBC
*.dct
*.DCT
*.fpt
*.FPT
*.dcx
*.DCX
*.irt
*.IRT
*.tbk
*.TBK
# Ignorar reportes
*.frx
*.FRX
*.frt
*.FRT
# Ignorar archivos temporales
*.bak
*.BAK
# Archivos ejecutables
*.exe



Extraído de: https://github.com/ircsasw/VFPconGit/blob/master/.gitignore

martes, 2 de abril de 2019

Imprimir un PDF usando Adobe Reader

Extraído de: https://www.foxite.com/archives/print-a-pdf-file-0000080476.htm

lcOldPrinter = SET('Printer',2)
lcPrinter = GetPrinter()
IF lcOldPrinter <> lcPrinter
   DECLARE Integer SetDefaultPrinter IN WINSPOOL.DRV String
   IF SetDefaultPrinter(lcPrinter) = 0
      messagebox("Cannot change default Windows Printer")
   ENDIF
ENDIF

DECLARE INTEGER ShellExecute IN SHELL32.DLL ;
        INTEGER lnHWnd, ;
        STRING lcAction, ;  
        STRING lcFileName, ;
        STRING lcExeParams, ;
        STRING lcDefDir, ;
        INTEGER lnShowWindow

DECLARE Sleep ;
  IN WIN32API ;
  INTEGER nMillisecs

IF ShellExecute(0,"open", FULLPATH(This.cDefaultOutputFile),"","",1) > 32 
   oShell = CreateObject("WScript.Shell")
   IF VARTYPE(oShell) = "O"
      *wait for Acrobat reader
      lntimeout=60
      lnstarttime=SECONDS()
      DO WHILE not (oShell.AppActivate("Adobe Reader") OR oShell.AppActivate("Adobe Acrobat")) AND ;
                      SECONDS()-lnstarttime<lntimeout
         sleep(2000)
      ENDDO

      IF oShell.AppActivate("Adobe Reader") OR oShell.AppActivate("Adobe Acrobat")
         oShell.SendKeys("^p")   && print the file
         lnstarttime=SECONDS()
         DO WHILE NOT oShell.AppActivate("Print") AND SECONDS()-lnstarttime<lntimeout
            sleep(2000)
         ENDDO
         IF oShell.AppActivate("Print")
            oShell.SendKeys("{ENTER}")
         ENDIF
         lnstarttime=SECONDS()

         * While printing, Acrobat reader cannot be closed; so repeat attempts to close it.
         DO WHILE (oShell.AppActivate("Adobe Reader") OR oShell.AppActivate("Adobe Acrobat")) AND ;
                           SECONDS()-lnstarttime<lntimeout
            oShell.SendKeys("^q")   && try to close Acrobat reader
            sleep(2000)
         enddo
      endif

      oShell=.null.
   ENDIF
ELSE
   MESSAGEBOX("There's a problem with the Acrobat Reader.",64,'Reader problem')
ENDIF

IF lcOldPrinter <> lcPrinter
   * Reset back to original printer default
   SetDefaultPrinter(lcOldPrinter)
ENDIF