Monday, December 31, 2007

Mis novedades para el 2008...

Hoy estamos 31 de Diciembre del 2007 en Lima, Perú. Se nos acaba el año y tengo preparadas algunas sorpresas para el nuevo año...Y claro, también algunas que quiero hacer...

 

  • El Arte de Programar SAP NetWeaver
  • El Arte de Programar Adobe Flex
  • El Arte de Programar Rails
  • Asistir al SAP TechEd 2008
  • Realizar el SAP Community Day - Lima 2008
  • Llegar a los 100 blogs en el SDN (Me faltan 38 si no me equivoco...)
  • Aprender OpenLaszlo
  • Aprender Android
  • Aprender Visual Prolog
  • Lanzar el ABAPIF (Ficción Interactiva en ABAP)
  • Llegar a 10K en el SDN (Me faltan algo de 1300 puntos...)

Saludos,

Blag.

Technorati Tags:

Sunday, December 23, 2007

Blag City

Mi ciudad en MyMiniCity ha comenzado a crecer...Así que ahora necesito crear algunas fabricas para poder generar empleos y que mis ciudadanos no se vayan a otra ciudad...

El nuevo enlace es este...

Blag City - Industrias

Saludos,

Blag.

Friday, December 21, 2007

Feliz Navidad y Feliz Año Nuevo 2008!

Nos acercamos a las fiestas navideñas, y no podía dejar pasar la oportunidad de desearles a todos...

UNA FELIZ NAVIDAD Y UN FELIZ AÑO NUEVO 2008!!!

DSC02312

Saludos,

Blag.

Voy a ser papá!!!

Algunos de ustedes lo saben, otros no...Pero mi esposa Milly y yo, vamos a tener una hija!!! -:D

Tammy Luz debe de estar naciendo más o menos a finales de Abril, así que como ya se imaginarán...Ando muy emocionado -;)

DSC02304

DSC02292

Saludos,

Blag.

Technorati Tags:

Thursday, December 20, 2007

Bloggeando Bilingüe

Como sabrán, además de bloggear en este humilde blog tecnológico, bloggeo también para SAP.

Lo que quizás no sepan muchos de ustedes, es que desde que regresé de Las Vegas TechEd, todos mis blogs en el SDN son traducidos y posteados aquí. Aunque no pasa lo mismo con los que posteo aquí, porque hay una gran diferencia entre el SDN y mi blog.

El SDN está orientado a tecnologías relacionadas con SAP, mientras que mi blog está orientado a tecnologías en general.

Por lo tanto, el hecho de escribir en Español y en Inglés, me permite tener una audiencia más diversa y amplia.

Nancy Marguiles hizo esta caricatura sobre mi...

DSC02084

Saludos,

Blag.

Technorati Tags:

Blag City

Gracias a un post de Craig en Twitter descubrí MyMiniCity...No se muy bien de que trata aún...parece que simplemente se trata de que cada visita genera habitantes, casas, trabajo, etc...Es decir, no hay muchas interacción con el sistema...Pero como eso no me importa...Ya creé mi propia ciudad -:D Blag City

Así que por favor visiten mi ciudad -;)

Blag-City

Saludos,

Blag.

Tuesday, December 18, 2007

Los mejores blogs del 2007 de Blag

Este año está terminando...Muy pronto vamos a comenzar el 2008 con muchas novedades y sorpresas. Quiero finalizar este maravilloso año con mi humilde lista de los mejores blogs...No están incluidas todas las categorías, puesto que no soy experto en todas las áreas...Pero pienso que de todos modos es una buena lista.

ABAP

SAPChess por Marcelo Ramos

ABAP Bitmap Image Processing Class por Thomas Jung

Tool for ABAP Developers: Easy ABAP Open SQL Joins! por Dushyant Shetty

WebDynpro

Yet another webdynpro (ABAP) se16 clone por Marcello Urbani

SAP Elegant Finder was born - it is the Open Source that makes a pleasure to search on Web Dynpro for ABAP por Sergio Ferrari

Integrating ALV in the Web Dynpro for ABAP(WDA ) application por Kamal Kumar

Webdynpro ABAP ALV Print Version(PDF) por Bv Pillai

Business Server Pages

An Introduction to FLOB (Flex on BSP) por Thomas Jung

Not a how to, but a what is: MVC – Model View Controller Pattern por Benjamin J Deaver

Using YouTube API inside a BSP application por Ignacio Hernández

Emerging Technologies

SAP MP3 - plug Business and play Music por Sergio Ferrari

Engaging User Interfaces with Adobe Flex por Matthias Zeller

SAP NetWeaver Platform

Developer's Journey through the SDN Subscription Program - Ch.1 Getting the Goods por Ed Herrmann

Ruby

Tasting the mix of Ruby and SAP - Volume 4 por Alvaro Tejada Galindo

PHP

Tasting the mix of PHP and SAP - Volume 12 por Alvaro Tejada Galindo

PHP in Netweaver Platform por Abdulbasit Gulsen

Developing composite applications with PHP - Google Maps por Frederic-Pascal Ahring

JavaScript

BSP Meet your AJAX Framework: AJS por Daniel McWeeney

Python

sapnwrfc for Python - To complete a hat trick por Piers Harding

Scripting Languages

SAP NW RFCSDK - it's here! por Piers Harding

Application Server

Purely Offline Adobe Scenario for BAPI call por Lisha Peter

Wii Goes Enterprise por Ed Herrmann

Beginner

The ABAP Runtime Trace (SE30) - Quick and Easy por Siegfried Boes

SCRIPT DEBUGGING por Sudheer Junnuthula

Beyond SAP

majority desk - get your wiihands on! por Ed Herrmann

Psychopathology of Software Development por Tobias Trapp

Colgate-Palmolive & SAP Imagineering Fellowship por Daniel McWeeney

Business Intelligence (BI)

What should be the Next Big Thing for SAP in BW/BI? por Vitaliy Rudnytskiy

Business Process Expert

Gliffy Plug-in for SDN/BPX WIKI has finally arrived por Richard Hirsch

Widgets

SDN Contributor Wordpress Widget por Oliver Kohl

Create your First Yahoo! Widget! por Abesh Bhattacharjee

SDN Points on Your Desktop por Guillaume García

Community Day

SAP Mentor Program por Mark Finnern

SAP Community Day - Looking forward not backward... por Thomas Alexander Ritter

Where is Eddy? por Mark Finnern

Blag on TechEd (Las Vegas) - Community Day por Alvaro Tejada Galindo

Java Programming

Make a JavaFX application calling a BAPI, using your SAP NetWeaver 7.1 Composition Environment por Ignacio Hernández

SAP Developer Network

Forget the 1 Million... por Craig Cmehil

Two Shots from the Past por Mark Finnern

SAP Community Network Reaches One Million Members! por Mark Yolton

SAP TechEd

My TechEd 2007 experience....a photo tour! por Christopher Solomon

Majority...what? Majority Desk! por Alvaro Tejada Galindo

Saludos,

Blag.

Technorati Tags:

Friday, December 14, 2007

Mi historia con el SAP Community Network

El blog de Craig "Forget the 1 million..." me dejó pensando...Y por supuesto...También me pidió que hiciera esto...Así que esto es una versión extendida de una historia muy conocida.

Estaba trabajando en un proyecto grande...Desarrollando una Interface con Dynpros para el aeropuerto de Lima, Perú....Por supuesto, necesitaba darme un descanzo, así que empezé a buscar en la red información sobre PHP...Descubrí el SDN (Por segunda vez)...Leí el blog Welcome! de John Coggeshal

No podía creer que PHP y SAP pudieran ser integrados...Leí el blog de John (Incluído en el post)...Leí algunos posts más, instalé el conector y publiqué mi primer post -:) Happy with PHP and SAP

Desarrollé dos ejemplos...Uno utilizando RFC_READ_TABLE y el otro utilizando RFC_READ_REPORT...No recuerdo exactamente como me contacté con Craig la primera vez...Le mandé un mail? Chateé con el en Skype? No importa...Me convertí en blogger y publiqué mi primer blog Tasting the mix of PHP and SAP

Divertido pero cierto...Recuerdo que luego de haber publicado mi primer blog, mi ex-jefe me dijo que dejara de bloggear en el SDN...Porque? Realmente no lo sé...Pero lo que si sé es que renuncié e inicié mi carrera como Freelance...Y el haberme tratado de alejar del SDN fué una mala desición de su parte...Estoy seguro de que ahora de arrepiente -;)

Continué blogeando y publiqué mi primer blog sobre Ruby Tasting the mix of Ruby and SAP

Con un buen número de blogs posteados y una gran cantidad de nuevos amigos, continué trabajando para el SDN y para mis propios clientes.

El BPX inició sus labores, así que me convertí en miembro...Hasta ahora no he publicado ningún blog relacionado con el BPX...Lo cual es bastante malo ya lo sé, porque en realidad quiero involucrarme más...Pero bueno, ya habrá tiempo para todo.

Este año fuí lo suficientemente afortunado de asistir a mi primer TechEd...Y la primera persona que conocí fué Rich Heilman...Escribí un blog por día...Un trabajo muy duro si me lo preguntan...Especialmente porque Craig me dijo que tenía que traducir todos mis post para publicarlos en este humilde blog -;)

En mis casi 3 años en el SCN...He utilizado muchas fotos...Quería mostrarlas para recordar como empecé...

alvaro_tejada Blag_Face alvaro_tejada_sdn Blag_Mentor

Bueno...ya se que es lo que están pensando...Nunca he utilizado la última foto...Por lo menos no en el SCN...Pero estoy pensando en utilizarla pronto...Por lo cual quería saber primero sus opioniones...No quiero equivocarme publicando un foto que no guste -;)

Ahora, ya conocen mi historia...La versión extendida...Cual es la tuya? Como el SCN cambió tu vida? Cuantanos tu historia...Estamos listos para escucharla (O leerla).

Saludos,

Blag.

Technorati Tags:

Wednesday, December 12, 2007

Tasting the mix of PHP, WML and SAP

Tasting the mix of SAP, WML and SAP on SDN

Saben ustedes lo que es el WML? Muy simple...WML significa Wireless Markup Language y es utilizado para desarrollar aplicaciones móbiles.

Hace algunas semanas, tuve que hacer un pequeño juego utilizando JavaME (Ya postearé sobre eso)...Por lo cual, obviamente pensé en hacer un emulador de SE16 utilizando el conector SAPJCo, JavaME y SAP...Por lástima, algunas librerías me siguen mostrando errores...No importa...Dado mi "error", decidí retomar un proyecto que tenía archivado desde hace tiempo...Utilizar PHP, WML y SAP para hacer una emulación de SE16...Me tomó algunas horas hacer esto...

index.php

<?php
session_start();
$_SESSION = array();
session_destroy();
header("Content-type: text/vnd.wap.wml");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
echo ("<?xml version='1.0'?>");
?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="index" title="SE16" ordered="false">
<p>
Server:<input name="Server" size="5"/><br/>
System:<input name="Sysnum" size="3"/><br/>
Client:<input name="Client" size="3"/><br/>
User:<input name="User" size="6"/><br/>
Password:<input name="Password" size="7" type="password"/><br/>
</p>
<do type="accept" label="OK" optional="false">
<go href="process.php" method="post">
<postfield name="Server" value="$Server"/>
<postfield name="Sysnum" value="$Sysnum"/>
<postfield name="Client" value="$Client"/>
<postfield name="User" value="$User"/>
<postfield name="Password" value="$Password"/>
</go>
</do>
</card>
</wml>

Login_Class.php

<?php

Class Login
{
var $Login, $rfc;

function Log_In($Server,$Sysnum,$Client,$User,$Pass)
{
$this->Login = array ("ASHOST"=>$Server,
                      "SYSNR"=>$Sysnum,
                      "CLIENT"=>$Client,
                      "USER"=>$User,
                      "PASSWD"=>$Pass,
                      "CODEPAGE"=>"1404");

return $this->Login;
}

function RFC_Connection($Login)
{
$this->rfc = saprfc_open($Login);

   IF ( !$this->rfc )
   {
       ECHO "The connection fails with the following error:".saprfc_error();
       EXIT;
   }
   else
   {
       return $this->rfc;
   }
}
}

?>

process.php

<?php
session_start();
header("Content-type: text/vnd.wap.wml");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
echo ("<?xml version='1.0'?>");
?>
<?php
require_once("Login_Class.php");
?>

<?php
if(!isset($_SESSION["Server"]))
{
$_SESSION["Server"] = $_POST["Server"];
$_SESSION["Sysnum"] = $_POST["Sysnum"];
$_SESSION["Client"] = $_POST["Client"];
$_SESSION["User"] = $_POST["User"];
$_SESSION["Pass"] = $_POST["Password"];
}
$Login = new Login();
$Log_Me =  $Login->Log_In($_SESSION["Server"],$_SESSION["Sysnum"],$_SESSION["Client"],
                          $_SESSION["User"],$_SESSION["Pass"]);
$RFC_Me = $Login->RFC_Connection($Log_Me);
?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="choose" title="SE16" ordered="false">
<p>
Table:<input name="Table" size="20"/><br/>
</p>
<do type="accept" label="OK" optional="false">
<go href="Show_Table.php" method="post">
<postfield name="Table" value="$Table"/>
</go>
</do>
</card>
</wml>

Show_Table.php

<?php
session_start();
require_once("SE16.php");
require_once("Login_CLass.php");

if(isset($_POST["Table"]))
{
$Table = $_POST["Table"];
$Login = new Login();
$Log_Me =  $Login->Log_In($_SESSION["Server"],$_SESSION["Sysnum"],$_SESSION["Client"],
                          $_SESSION["User"],$_SESSION["Pass"]);
$RFC_Me = $Login->RFC_Connection($Log_Me);
$SE16 = new SE16();
$SE16->Show_Table($Table,$RFC_Me);
}
?>

SE16.php

<?php
header("Content-type: text/vnd.wap.wml");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
echo ("<?xml version='1.0'?>");
?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">

<?php

Class SE16
{
var $fce;

function Show_Table($Table,$RFC_Me)
{

   $this->fce = saprfc_function_discover($RFC_Me, "RFC_READ_TABLE");
   IF (! $this->fce )
   {
       ECHO "The function module had failed.";
       EXIT;
   }

   $Table = STRTOUPPER($Table);

   saprfc_import ($this->fce,"QUERY_TABLE",$Table);
   saprfc_import ($this->fce,"DELIMITER","/");
   saprfc_table_init ($this->fce,"OPTIONS");
   saprfc_table_init ($this->fce,"FIELDS");
   saprfc_table_init ($this->fce,"DATA");

   $rfc_rc = "";

   $rfc_rc = saprfc_call_and_receive ($this->fce);
   if ($rfc_rc != SAPRFC_OK)
   {
       if ($rfc == SAPRFC_EXCEPTION )
           echo ("Exception raised: ".saprfc_exception($this->fce));
       else
           echo ("Call error: ".saprfc_error($this->fce));
       exit;
   }

   $data_row = saprfc_table_rows ($this->fce,"DATA");
   $field_row = saprfc_table_rows ($this->fce,"FIELDS");

   ECHO "<wml>";
   ECHO "<card id='SE16' title='' ordered='false'>";
   ECHO "<p>";
   ECHO "<table columns='$field_row' title='$Table'>";
   ECHO "<tr>";
   for($i=1; $i<=$field_row ; $i++)
   {
   $FIELDS = saprfc_table_read ($this->fce,"FIELDS",$i);   
   ECHO "<td><b>";
   ECHO $FIELDS['FIELDNAME'];
   ECHO "</b></td>";
   }
   ECHO "</tr>";
   for($i=1; $i<=$data_row ; $i++)
   {
   ECHO "<tr>";
   $DATA = saprfc_table_read ($this->fce,"DATA",$i);
   $TEST = SPLIT("/",$DATA['WA']);
     for($j=0; $j<$field_row; $j++)
     {
     ECHO "<td>";
     ECHO $TEST[$j];
     ECHO "</td>";
     }
   ECHO "</tr>";
   }  
   ECHO "</table>";
   ECHO "</p>";
   ECHO "</card>";
   ECHO "</wml>";
}
}

?>

Ahora, podemos ver algunas imágenes...

SE16_WAP_Login

SE16_WAP_Table

SE16_WAP_Show

Inclusive, podemos utilizar el navegador Opera para poder ver mejor el output de la tabla.

SE16_WAP_Show_Opera

Espero que le haya gustado.

Saludos,

Blag.

 

Technorati Tags:

Monday, December 10, 2007

Un millón de gracias!!!

Mark Yolton, VicePresidente del SAP Community Network (Y un amigo mío), publícó un excelente blog hace algunos días...

SAP Community Network Reaches One Million Members

Es verdad...El SCN ha logrado alcanzar la ambiosa meta de 1 millón de miembros! Algo realmente impresionante para una comunidad que cuenta con 4 años de existencia en la web.

Como Mentor de SAP, me siento más orgulloso aún, puesto que como parte de mis labores, he contribuido a que más gente se inscriba al SCN.

thanksamillion

Saludos,

Blag.

Technorati Tags:

Wednesday, December 05, 2007

Mosaico de Programación

Ayer estaba un poco aburrido...Así que se me ocurrió hacer un pequeño mosaico con los logos de los lenguajes de programación. Claro, no utilicé todos los que encontré (Gracias especiales a Dan McWeeney y Jim Spath), pero creo que me quedó bien -:)

Este es el wallpaper que ahora utilizo en mi laptop.



Saludos,

Blag.