Consultes Access excloent valors nuls

Consultes Access excloent valors nuls

Treballant amb Access sovint tinc que consultar coses ja que ningú m’ha ensenyat com funciona el programa i tot s’apren sobre la marxa, com tot vaja xDD

Aquest és el primer de molts post que aniré obrint per fer-me a mi mateix una guia del que faig i de pas ajudar a la resta qui tingui el mateix dubte que jo he resolt. En tot cas començo.

Problema
Estic fent una consulta sobre la Taula -Preclients, en la que hi ha registres que no tenen correu, faig una Consulta que em crea una Taula-PreclientsFiltrats. Això és un problema ja que utilitzo un funció que recorre la Taula-PreclientsFiltrats i envia un correu a cada registre mitjançant Outlook personalitzat i quan troba una direcció nul·la o mal escrita (domini@pepito,com o dominipepito.com) s’atura.

Solució
A la Consulta posar en el camp de «Criterios» (Tinc Office 2010 en castellà) No es nulo

Exemple
Consulta:
Office 2010

Office 2003 Compte amb la sintaxis que canvia de Office 2003 al 2007 en endavant.
 Taula-PreclientsFiltrats:  Problema correu buit

Office 2003:http://office.microsoft.com/es-es/access-help/ejemplos-de-criterios-de-consulta-HP005188516.aspx?CTT=1

Office 2007: http://office.microsoft.com/es-es/access-help/ejemplos-de-criterios-de-consulta-HA010066611.aspx

Office 2010: http://office.microsoft.com/es-es/access-help/ejemplos-de-criterios-de-consulta-HA010341674.aspx?CTT=1

PD: Compte amb la versió i l’idioma d’Access que utilitzeu!

 

Redirecciona el teu web amb javascript

Aquesta funció habitualment s’utilitza per dominis clonats, o webs amb més d’un domini. No te gaire més secret que posar el script dins del nostre index.html i tot llest. Podem configurar el missatge que es mostrarà, el temps que tarda en la redirecció i el web destí òbviament.

var pagina="http://www.elteudomini.algo/"
function redireccionar() 
{
location.href=pagina
} 
setTimeout ("redireccionar()", 4500);

Això en HTML quedaria així per exemple

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Redirecció</title>
<style type="text/css">
<!--
body {
	background-image: url();
}
-->
</style>
</head>

<body>


<!--Redireccio-->
  <script LANGUAGE="JavaScript">

var pagina="http://www.elteudomini.algo/"
function redireccionar() 
{
location.href=pagina
} 
setTimeout ("redireccionar()", 4500);

</script>

<!--Redireccio-->


<p> </p>
<h1><strong>Esta sent redireccionat al web.</strong></h1>
<h1> </h1>
<h1><strong>Si no funciona, prem el següent  <a href="http://www.elteudomini.algo">enllaç</a></strong></h1>
<p>  </p>


</body>
</html>
Mostra les teves entrades de WordPress com si fossin en format Galeria amb Twenty Ten

Mostra les teves entrades de WordPress com si fossin en format Galeria amb Twenty Ten

Cansat de que la pàgina principal fos intermiable, sobretot amb les guies extenses que faig xDD, vaig pensar que podia sortir com la quan selecciones la opció de «Galeria» editant el vostre WP
Total que buscant una mica per internet, i fent una mirada del que fa WP quan seleccionem la opció de Galeria, vaig posar això.

Dins del nostre tema, si editem el loop.php
Busquem la funció <div class=»entry-content» > i substituïm per això:

			<div class="entry-content">

<?php if ( function_exists("has_post_thumbnail") && has_post_thumbnail() ) { the_post_thumbnail(array(150,150), array("class" => "alignleft post_thumbnail")); } ?>

<?php // Prova mostrant miniatures a la portada com la galeria
?>
 <?php
 $images = get_children( array( 'post_parent' => $post->ID, 'post_type' => 'attachment', 'post_mime_type' => 'image', 'orderby' => 'menu_order', 'order' => 'ASC', 'numberposts' => 999 ) );
 if ( $images ) :
 $total_images = count( $images );
 $image = array_shift( $images );
 $image_img_tag = wp_get_attachment_image( $image->ID, 'thumbnail' );
 ?>
 <div class="gallery-thumb">
 <a  class="size-thumbnail" href="<?php the_permalink(); ?>"><?php echo $image_img_tag; ?></a>
 </div><!-- .gallery-thumb --><p> </p>
 <?php the_excerpt(); ?>
 <?php else : ?>
 <?php the_content( __( 'Continue reading <span>→</span>', 'twentyten' ) ); ?>
 <?php endif; ?>
				<?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pages:', 'twentyten' ), 'after' => '</div>' ) ); ?>
			</div><!-- .entry-content -->
	<?php endif; ?>

 

I després per que això també passi quan busquem o llistem per categories canviem aquesta línia:

<?php if ( is_archive() || is_search() ) : // Only display excerpts for archives and search. ?>

Per aquesta altre:

<?php if (is_search() ) : // Only display excerpts for search. ?>

Lògic no? xD

Exemple:
PD: Per que surtin així, s’ha de inserir una imatge mitjançant el gestor de WP, no una inserida mitjançant HTML

Apa 🙂

Com postejar codi dins WordPress

Avui mateix per escriure una mini guia he tingut que investigar 5 min com fer un post maco amb el codi. Si sou usuaris de WordPress, directament te una funció instal·lada ja en el seu codi, feu un cop d’ull aquí, si no és el vostre cas, i teniu un wordpress en servidor privat, he trobat el Plugin WP SyntaxHighlighter soporta molts llenguatges de programació i per el poc que he provat, funciona molt be. A part te alguns Skins per semblar-se a programes amb els que programem normalment, com l’Eclipse

A disfrutar

Os deixo un exemple de codi en Visual Basic d’aquest post

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim CorreuEnviat As Recipient
Dim Missatge As String
Dim Resposta As Integer
Dim CorreuCCO As String
On Error Resume Next

' #### Opcions d'usuari ####
' adreça per CCO -- ha de ser una adreça SMTP
' dins de l'agenda

CorreuCCO = "correu@elvostredomini.algo"

Set CorreuEnviat = Item.Recipients.Add(CorreuCCO)
CorreuEnviat.Type = olBCC

If Not CorreuEnviat.Resolve Then
Missatge = "No s'ha trobat el destinatari CCO. " & _
"Segueixes volent enviar el missatge?"
Resposta = MsgBox(Missatge, vbYesNo + vbDefaultButton1, _
"No s'ha trovat el destinatari CCO")
If Resposta = vbNo Then
Cancel = True
End If
End If

Set CorreuEnviat = Nothing
End Sub
Automàtic CCO per els correus sortints des d’Outlook

Automàtic CCO per els correus sortints des d’Outlook

Bon dia!

Be, per temes de treball he tingut que fer la copia absoluta de tot el que es rep en un correu  mitjançant Outlook 2010 i rebre-ho en un altre ordinador amb Outlook, que és lo de menys. La cosa es que en el lloc on rebo el backup d’aquesta conta de correu tinc que tindre    tant els rebuts com els enviats. Per tot això i desprès de diverses proves amb Regles d’Outlook, m’he decidit posar en pràctica el que vaig aprendre en un curset de vBasic, òbviament ajudant-me de sant Google, ja que tinc el poc codi que sé oxidat.

Per fer això hem d’anar a Visual Basic d’intre d’Outlook, el trobareu a la pestanya de «Programador». Un cop allà anem a «Application» i al desplegable de la dreta «ItemSend». Un cop allà copiem aquest codi:

 

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
 Dim CorreuEnviat As Recipient
 Dim Missatge As String
 Dim Resposta As Integer
 Dim CorreuCCO As String
 On Error Resume Next
 ' #### Opcions d'usuari ####
 ' adreça per CCO -- ha de ser una adreça SMTP
 ' dins de l'agenda
 CorreuCCO = "correu@elvostredomini.algo"
 Set CorreuEnviat = Item.Recipients.Add(CorreuCCO)
 CorreuEnviat.Type = olBCC
 If Not CorreuEnviat.Resolve Then
 Missatge = "No s'ha trobat el destinatari CCO. " & _
 "Segueixes volent enviar el missatge?"
 Resposta = MsgBox(Missatge, vbYesNo + vbDefaultButton1, _
 "No s'ha trovat el destinatari CCO")
 If Resposta = vbNo Then
 Cancel = True
 End If
 End If
 Set CorreuEnviat = Nothing
 End Sub

Recordeu d’habilitar les macros i de comprovar que realment funciona havent reiniciat outlook desprès de modificar el ItemSend, marcant sobre la funció dins de Visual Basic. Aquesta marca serveix per posar un punt de pausa sobre l’execució d’aquesta funció.
 Minimitzar-lo i enviar un correu de prova, un cop li doneu a enviar os ha de saltar la pantalla del Visual Basic amb això
Si premeu F8 veureu com recorre la funció pas a pas, si no F5 per que segueixi fent normal.

Trobareu el post original en aquest enllaç
Com podreu veure poca pràctica he fet, tot i que això em serveixi al menys per entendre el que he fet. jaja

 

Comando ROBOCOPY de Ms-Dos, la millor forma de copiar les teves dades.

Comando ROBOCOPY de Ms-Dos, la millor forma de copiar les teves dades.

Font: http://norfipc.com/comandos/como-usar-comando-robocopy-ejemplos.html

Como usar el comando Robocopy en Windows, ejemplos prácticos y códigos.

Como utilizar el comando Robocopy en Windows, para copiar de manera rápida, eficaz y eficiente archivos, carpetas, datos, informaciones, discos CDROM, DVD en la computadora local, en la red y en internet. Como crear backups y respaldos de datos. Ejemplos prácticos, códigos para probar y efectuar copias. Sintaxis, parámetros y opciones que permite el comando.
Robocopy es uno de los comandos disponibles más poderosos, útiles y empleados en la línea de comandos de Windows. Permite copiar carpetas y directorios ya sea en una PC local o en la red (no copia archivos aislados). Es una especie de comando de tercera generación que toma las cualidades de los conocidos COPY y XCOPY y las perfecciona al máximo.

Ventajas que aporta el uso de Robocopy.

• Tolera las interrupciones en la copia de archivos ya sea por cortes de energía o en la conexión.
• Realiza reintentos automáticos si no se puede acceder a un archivo.
• Permite copiar grandes cantidades de archivos, imposible con XCOPY.
• Muestra indicador de progreso.
• Permite copiado multihilo.
• Copia correctamente toda la información como propiedades, atributos, datos del propietario, fechas, etc además mantiene inalterables los permisos del archivo.

Robocopy solo está disponible en los sistemas posteriores a Windows Vista, pero si usas Windows XP puedes descargar la aplicación en el link más abajo y agregarlo a tu sistema. Para eso descomprime el archivo que descargues y la aplicación robocopy.exe en su interior muévala a la carpeta C:Windows. Desde ese momento podrás ejecutar robocopy en la consola de cmd.

Descargar el comando robocopy para Windows XP Descarga el comando Robocopy para Windows XP

Formas prácticas y sencillas de usar el comando robocopy.

ROBOCOPY ORIGEN DESTINO /E

Permite copiar de forma recursiva carpetas con subdirectorios aunque estén vacíos.

ROBOCOPY ORIGEN DESTINO /S

Copia de forma recursiva carpetas con subdirectorios pero no los vacios

ROBOCOPY ORIGEN DESTINO /MIR

MIR modo espejo, Copia de forma recursiva pero al terminar se eliminan los archivos en el destino que ya no existen en el origen.

Es posible indicar archivos específicos para ser copiados usando asteriscos de la siguiente forma:

ROBOCOPY ORIGEN DESTINO *.doc /E

En este caso solo se copiarán documentos de extensión de archivo .DOC, si esta opción no es utilizada se emplea de forma predeterminada *.* o sea se copian todos los archivos encontrados.

Algunas de las opciones que permite el comando robocopy.

/R:n Numero de reintentos en caso de algún error.
/W:n Tiempo de espera entre reintentos.
/MT:n Realiza copias multiproceso, n especifica el número de hilos, el valor predeterminado es 8, n debe estar comprendido entre 1 y 128.
/MOV Mueve archivos y los elimina del origen después de ser copiados.
/MOVE Mueve archivos y carpetas y los elimina del origen después de ser copiados.
/V Mostrar información detallada durante la copia.
/L Hace una simulación, solo mostrar no copia.
/FP Incluir ruta de acceso completa de los archivos en el resultado.
/NJH No muestra el encabezado en la consola.
/NJS No muestra el resumen final.
/Z Copia archivos en modo reiniciable. Escribirá un registro en el archivo incompleto en caso de que la operación se vea interrumpida, para que en otra ejecución de Robocopy pueda continuarse por donde se dejó.
/MAX:n Tamaño máximo de archivo, no se copian archivos mayores que el valor de n expresado en bytes.
/MIN:n Tamaño mínimo de archivo, no se copian archivos menores que el valor de n expresado en bytes.
/MAXAGE:n Antigüedad máxima de archivo, no se copian archivos mayores que el valor de n en días, puede usarse también fecha.
/MINAGE:n Antigüedad mínima de archivo no se copian archivos menores que el valor de n en días, puede usarse también fecha.
/RH:hhmm-hhmm Horas de ejecución, intervalo de horas en formato de 24 horas en que se debe iniciar la copia.
/LOG:log.txt Permite guardar un informa con los datos de la copia efectuada en un archivo de texto.

Para crear una lista en tu escritorio con todas las opciones para usar con Robocopy solo introduce en la consola:

robocopy.exe /?>%userprofile%DesktopOpciones_Robocopy.doc

Ejemplos prácticos de tareas en que usar el comando ROBOCOPY.

Algunos ejemplos prácticos de códigos empleados para usar Robocopy, distintas opciones que se pueden usar. Para no crear confusión se utiliza la misma carpeta de origen.
Se utiliza %userprofile% que es una variable de entorno que sustituye el nombre de usuario, ya que en cada PC este es diferente.
Siempre asegúrate que si la ruta que utilizas contiene espacios en el nombre, es necesario encerrarla entre comillas.

ROBOCOPY %userprofile%Documents D:BACKUPDocumentos /E /MT:24 /LOG:%userprofile%Desktopcopia.txt

Introduciendo la línea de código anterior en la consola, se crea un respaldo completo de la carpeta Mis documentos, emplea el modo multiproceso copiando con 24 hilos simultáneamente y al finalizar escribe el resultado en un log nombrado: copia.txt creado en el escritorio.

ROBOCOPY %userprofile%Documents D:BACKUPDocumentos *.doc /S

Crea un respaldo de la carpeta Mis documentos, pero solo copiando archivos con la extensión .doc y .docx, asegurando que solo se copien las subcarpetas que no estén vacías.

ROBOCOPY %userprofile%Documents  D:BACKUPDocumentos /e  /MAX:10000

Crea un respaldo de Mis documentos pero solo copiando archivos mayores de 10 KB.

ROBOCOPY %userprofile%Documents D:BACKUPDocumentos /S /MAXAGE:1

Crea un respaldo de Mis documentos pero solo copiando archivos creados o modificados en las últimas 24 horas (/MAXAGE:1)

@echo off
set dia=%date:~0,2%
set mes=%date:~3,2%
set year=%date:~6,4%
ROBOCOPY %userprofile%Documents D:BACKUPDocumentos%dia%-%mes%-%year% /MAXAGE:1

La misma operación que con el código anterior, pero en este caso con un archivo batch que cada vez que se ejecuta crea una nueva carpeta con el formato dia-mes-año y permita conservar los respaldos anteriores.

ROBOCOPY %userprofile%Documents D:BACKUPDocumentos /E /RH:2350-2359

Crea un respaldo completo de Mis documentos iniciándolo a las 11:50pm.

ROBOCOPY %userprofile%Documents D:BACKUPDocumentos /min:10000 /L

Listar. Muestra una lista de los archivos en la carpeta de origen, pero solo mayores de 10KB.

ROBOCOPY %userprofile%Documents D:BACKUPDocumentos /max:10000 /L

Listar. Muestra una lista de los archivos en la carpeta de origen, pero solo los menores de 10KB.

ROBOCOPY %userprofile%DocumentsDescargas D:BACKUPDocumentosDescargas /E /MOT:60

Supervisar origen, crea un respaldo de la carpeta de Descargas y revisa cada 1 hora (60 minutos) si existe algún archivo nuevo, si es así lo agrega al respaldo ya hecho.

ROBOCOPY E:  D:BACKUPDISK /E /R:0 /W:0 /V

Copia datos de un CD insertado en la unidad E con sectores dañados, asegurando con la opción /R:0 que no se harán reintentos de lectura en errores y con la opción /W:0 que no habrá tiempo de espera. El éxito también depende de las características de la unidad óptica usada.

Si haces un batch para automatizar algunas tareas, puedes aprovechar los códigos de error generados para que se reproduzca un sonido y se muestre un mensaje de acuerdo con los resultados obtenidos.

• El código de error 0 significa que no se han hecho cambios.
• El código de error 1 significa que la copia ha sido hecha correctamente.
• El código de error 4 y mayor significa que ha habido algún error.

Estos son solo algunos, puedes utilizarlos todos y personalizar el resultado a tu gusto.
Ejemplo del batch, pruébalo:

@echo off
ROBOCOPY %userprofile%Documents D:BACKUPDocumentos *.doc /s
if errorlevel 4 echo DISCREPANCIAS & goto bad
if errorlevel 1 echo Copia correcta & goto bok
if errorlevel 0 echo Sin cambios & goto bokk

:bad
start C:WindowsMediachord.wav
msg * ERROR
pause
exit

:bok
start C:WindowsMediading.wav
msg * Copia correcta
pause
exit

:bokk
start C:WindowsMedianotify.wav
msg * Sin cambios
pause
exit

Lista de todos los códigos de error generados en el uso de Robocopy.

Al usar Robocopy en archivos batch puedes especificar como origen simplemente %1, de esta forma puedes arrastrar carpetas y directorios completos encima del batch y soltarlos, la copia se efectuará hacia el destino especificado en el código, un ejemplo:

robocopy %1 D:BACKUP /E

Como emplear Robocopy para hacer copias en la red.

ROBOCOPY por su característica de copiar solo archivos que se han modificado es de gran utilidad para realizar respaldos, tanto en la PC como en la red.
Plantilla de archivo batch para realizar una copia de una fuente determinada a un destino incluyendo todos los permisos de acceso, cuando se ejecute regularmente solo copiará archivos que hayan sido modificados. Para usarlo ingresa la ruta necesaria en la fuente y destino.

@ECHO OFF
SETLOCAL

SET _fuente=RUTA fuente
SET _destino=RUTA destino
SET _que=/COPYALL /B /SEC /MIR
SET _opciones=/R:0 /W:0 /LOG:log.txt /NFL /NDL
ROBOCOPY %_ fuente % %_destino% %_que% %_opciones%

Significado de cada opción.

• /COPYALL Copia información de todos los archivos.
• /B Copiar archivos en modo de copia de seguridad.
• /SEC Copia archivos con seguridad.
• /MIR Reflejar un árbol de directorios.
• /R:n Numero de reintentos.
• /W:n Tiempo a esperar entre reintentos.
• /LOG Ubicación del log de salida.
• /NFL Sin lista de archivos, no registrar nombres de archivo.
• /NDL Sin lista de directorios, no registrar nombres de directorio.

En caso de que necesites utilizar ROBOCOPY para realizar una copia de un servidor a otro en la red, es necesario autentificarse primero, hazlo el batch de la siguiente forma:

@ECHO OFF
SETLOCAL

SET _fuente=Servidor1Usuario
SET _destino=Servidor2Backup_Usuario
SET _que=/COPYALL /B /SEC /MIR
SET _opciones =R:0 /W:0 /LOG:log.txt /NFL /NDL

NET USEServidor1IPC$ /u:nombre_de_usuario  contraseña
ROBOCOPY %_ fuente % %_destino% %_que% %_opciones%

Otro código en este caso útil para subir archivos de la PC a tu servidor web.

SET src="D:origen de los archivos"
SET dest="servidorbackup$"
SET log="C:logscopia.log"

robocopy %src% %dest% /E /Z /SEC /MIR /R:1 /LOG:%log%

Es posible ejecutar dos tareas al mismo tiempo minimizadas, para eso utilízalo en un batch de la siguiente forma:

@ECHO OFF
Start /Min "tarea1" RobocopyArchivoServidor1C$Database1ArchivoServidorBackupAc$Backups
Start /Min "tarea2" RobocopyArchivoServidor2C$Database2ArchivoServidorBackupBc$Backups

Para limitar el ancho de banda al usar Robocopy en la red, es posible usar el parámetro /IPG:n que enviará paquetes de 64KB cada uno seguidos por un retraso especificado en n de milisegundos.