Wednesday, December 1, 2010
Tuesday, November 30, 2010
set up WIFI in Ubuntu ( Wireless World)
1.) disable atheros hardware access layer (System > Administration > Hardware Drivers)
2.) sudo reboot
3.) wget http://snapshots.madwifi.org/madwifi-hal-0.10.5.6/madwifi-hal-0.10.5.6-r3861-20080903.tar.gz
if you are not getting this link try with below command:
sudo svn co https://svn.madwifi-project.org/madwifi/trunk
4.) tar -xvf madwifi-hal-0.10.5.6-r3861-20080903.tar.gz
5.) cd madwifi-hal-0.10.5.6-r3861-20080903
6.) sudo make install
7.) sudo modprobe ath_pci
8.) sudo nano /etc/modules and append ‘ath_pci’
9.) sudo reboot
Happy WIFI surfing
reference:
http://www.ubuntugeek.com/atheros-ar5007-wireless-with-madwifi-on-ubuntu-804-hardy-heron.html
http://www.pcmech.com/article/how-to-quick-wireless-setup-with-ubuntu-804/
Wednesday, November 24, 2010
Subfile programs and Docs
subfile doc basics and simple programs
2. Subfile Keywords:
Subfile Keywords
3. Subfile Programs
Subfile Programs
4. subfiles detailed document
subfile
Wednesday, June 2, 2010
Saturday, May 8, 2010
searching for as400 scope
http://as400blog.blogspot.com/search/label/history
Wednesday, March 3, 2010
Procedures within an ILE RPG program
Something more am trying to know about procedure,subprocedure,service program. While googling sample programs and I created one procedure in program. Iam not sure about the the other concepts now. Let me hack it later.
these procedures can be used like built-in functions:-)
http://publib.boulder.ibm.com/iseries/v5r2/ic2924/books/c092508410.htm
steps for creation:
(1)
A Prototype which specifies the name, return value if any, and parameters if any.
(2)
A Begin-Procedure specification (B in position 24 of a procedure specification)
(3)
A Procedure-Interface definition, which specifies the return value and parameters, if any. The procedure interface must match the corresponding prototype. The procedure-interface definition is optional if the subprocedure does not return a value and does not have any parameters that are passed to it.
(4)
Other definition specifications of variables, constants and prototypes needed by the subprocedure. These definitions are local definitions.
(5)
Any calculation specifications, standard or free-form, needed to perform the task of the procedure. The calculations may refer to both local and global definitions. Any subroutines included within the subprocedure are local. They cannot be used outside of the subprocedure. If the subprocedure returns a value, then the subprocedure must contain a RETURN operation.
(6)
An End-Procedure specification (E in position 24 of a procedure specification)
See sample program:
Rest of the code highlighted:
But default activation group(DFTACTGRP) as 'YES' throwing error while compiling, this can solveed giving as option 'NO'
not sure the reason for this ( need to investigate)
Activation group . . . . . . . . ACTGRP QILE
OUTPUT
See little about free format.... we can write direct statements separated by semicolon in between /free ...and /end-free
Please refer :
Code400.com
Friday, February 26, 2010
RPG flaw in addition
Monday, February 22, 2010
SETLL
http://publib.boulder.ibm.com/iseries/v5r1/ic2924/books/c0925083713.htm
CHGPF http://search400.techtarget.com/tips/index/0,289482,sid3_tax2f9,00.html
When the structure of a physical file changes, most AS/400 programmers take the following steps to incorporate the change:
a. Change the DDS to reflect the new structure.
b. Make a copy of the data from the old structure file.
c. Delete any logical files based on the physical file.
d. Recompile the source and rebuild any logical files.
e. Copy the old data back to the new structure, specifying options *DROP and *MAP.
You can use the CHGPF command to achieve the same goal with less effort. When you need to recompile because of a change in file structure, follow these steps:
a. Make the necessary changes to the DDS source.
b. Type CHGPF and press F4 to display the screen below:
�������������������� Change Physical File (CHGPF)
� Type choices, press Enter.
� Physical file� . . . . . .��� ARETURNS�� Name
��� Library� . . . . . . . .����� INVLIB�� Name, *LIBL, *CURLIB
� System . . . . . . . . . .��� *LCL������ *LCL, *RMT, *FILETYPE
� Source file� . . . . . . .��� QDDSSRC��� Name, *NONE
��� Library� . . . . . . . .����� SRCLIB�� Name, *LIBL, *CURLIB
Enter the name of the physical file and the name of the library in which the file resides. Also type the source physical file name and the name of the library in which the source file resides.
c. Press Enter to display the screen below:
�������������������� Change Physical File (CHGPF)
� Type choices, press Enter.
� Physical file� . . . . . . .� ARETURNS�� Name
��� Library� . . . . . . . . .��� INVLIB�� Name, *LIBL, *CURLIB
� System . . . . . . . . . . .� *LCL������ *LCL, *RMT, *FILETYPE
� Source file� . . . . . . . .� QDDSSRC��� Name, *NONE
��� Library� . . . . . . . . .��� SRCLIB�� Name, *LIBL, *CURLIB
� Source member� . . . . . . .� *FILE����� Name, *FILE
� Source listing options . . .������������ *SRC, *NOSRC,*SOURCE...
���������������� + for more values
� Generation severity level� .� 20�������� 0-30
� Flagging severity level� . .� 0��������� 0-30
� Delete dependent logical file *NO������� *NO, *YES
� Remove constraint� . . . . .� *RESTRICT� *RESTRICT, *REMOVE
� Expiration date for member .� *NONE����� Date, *SAME, *NONE
Enter the source member name, and press Enter. This step recompiles the physical and logical files and copies data back. In fact, it does all the steps you've been doing manually.
Note that when you change the DDS to reduce a field's size or drop a field, you may receive a message warning that you may lose your data. You can ignore the message by responding to it with I(gnore).
You can use a similar technique to delete all the logical files based on a physical file. Rather than using the DSPDBR command to find all dependent logicals and then deleting them one by one, simply use the CHGPF command as described above and specify *YES for "Delete dependent logical file" on the second screen to delete all dependent files.
Saturday, February 20, 2010
CHAIN AND SETLL -- RPGLE
If the programmer is using SETLL and READE to get a single record you could change the program to CHAIN and get quicker results. The SETLL and READE is good only for situations where you need to read a group of records with the same propertie
The below program is for fetching Employee Name and Employee Salary based on the Employee Number Entered through the screen.
Based on the input ( Employee Nmber - EMPIDS ) the CHAIN opcode will directly point to the record . READE will read that records and passing the values to Screen variables ... quite easy and simple.
I will publish the SETLL program in the next------------------------------
Saturday, February 13, 2010
RPGLE - Compile Time Array
Compile time array get populated at the time compilation of the code.Mostly these type of array use for error message display.
** and then data in successive lines at the bottom of the source.Below example we have defined an COMARR compile time array using CTDATA
OUTPUT:
======
The COMARR compile time array data we can hard code as row wise. But while declaring we have to specify how many values entering per row . Below example entering 5 records ( all the array values) per row. Keyword PERRCD(5)
OUTPUT:
=====
Thursday, February 11, 2010
RPGLE - Runtime Array
Wednesday, February 10, 2010
Convert date format RPGLE
C ....*USA....... MOVE.......Datetemp.....Dat
C .... Dat ...... DSPLY....
Dat declared as 8 D ( date data type with 8 length ) to compact with *USA format
OUTPUT:
======
Character (A)
Graphic (G)
Numeric - Integer format (I)
Numeric – Packed decimal format (P)
Numeric - Zoned format (S)
Numeric - Unsigned format (U)
Float (F)
Date (D)
Time (T)
Timestamp (Z)
Shifting to tn5250
This has given by the http://www.rzkh.de/ as400 service administrators
See wiki.
http://en.wikipedia.org/wiki/IBM_5250
Tuesday, February 9, 2010
RPGLE - Concatenate two strings,addition
Simple programs are always helpful to get good step to learn a new language. See below how easy this is to write RPGLE ( am learning from basic ) rather than jumping to big things
INZ keyword is used to initialize the 'surname' and 'forename'. But before concatenating the variables using 'CAT' the valued changed using EVAL opcode.
Addition can be done using 'ADD'.
Arithmetic operations:
http://publib.boulder.ibm.com/infocenter/iadthelp/v7r0/index.jsp?topic=/com.ibm.etools.iseries.langref.doc/evferlsh354.htm
Monday, February 8, 2010
AS400 questions and answers refer
http://www.aired.in/2009/12/ibm-as-400-interview-questions-and.html
Wednesday, February 3, 2010
RPG opcode screen
ACQ -- Acquire device
BEGSR -- Begin Subroutine
CALLP -- Call Prototyped Procedure or Program
CHAIN -- Retrieve Record by key
CLEAR -- Clear
CLOSE -- Close File
COMMIT -- Commit Database changes
DEALLOC -- Release Dynamically Allocated Storage
DELETE -- Delete Record
DOU -- Do Until
DOW -- Do While
DSPLY -- Display message
DUMP -- Dump Program
ELSE -- Else
ELSEIF -- Else If
ENDyy -- End a Structured Group (where yy = DO, FOR, IF, MON, SL, or SR)
EVAL -- Evaluate expression
EVALR -- Evaluate expression and right adjust result
EXCEPT -- Perform Exception Output
EXFMT -- Write/Then Read Format from display
EXSR -- Execute Subroutine
FEOD -- Force End of Data
FOR -- For
FORCE -- Force specified file to be read on next Cycle
IF -- If
IN -- Retrieve a Data Area
ITER -- Iterate
LEAVE -- Leave a Do/For Group
LEAVESR -- Leave a Subroutine
MONITOR -- Begin a Monitor Group
NEXT -- Next
ON-ERROR -- Specify errors to handle within MONITOR group
OPEN -- Open File for Processing
OTHER -- Start of default processing for SELECT group
OUT -- Write Data Area
POST -- Post
READ -- Read a record
READC -- Read next changed record
READE -- Read next record with equal Key
READP -- Read prior record
READPE -- Read prior record with equal Key
REL -- Release
RESET -- Reset
RETURN -- Return to Caller
ROLBK -- Roll Back uncommitted database changes
SELECT -- Begin a Select Group
SETGT -- Position database to record with key greater than specified key
SETLL -- Position database to record with key not greater than specified key
SORTA -- Sort an Array
TEST -- Test Date/Time/Timestamp
UNLOCK -- Unlock a Data Area or Release a Record
UPDATE -- Modify Existing Record
WHEN -- Condition test within SELECT group
WRITE -- Write New Record
RPGLE Built in function reference
===================================
%ABS - Absolute Value of Expression
%ADDR - Get Address of Variable
%ALLOC - Allocate Storage
%CHAR - Convert to Character Data
%CHECK - Check Characters
%CHECKR - Check Reverse
%DATE - Convert to Date
%DAYS - Number of Days
%DEC - Convert to Packed Decimal Format
%DECH - Convert to Packed Decimal Format with Half Adjust
%DECPOS - Get Number of Decimal Positions
%DIFF - Difference Between Two Date, Time, or Timestamp Values
%DIV - Return Integer Portion of Quotient
%EDITC - Edit Value Using an Editcode
%EDITFLT - Convert to Float External Representation
%EDITW - Edit Value Using an Editword
%ELEM - Get Number of Elements
%EOF - Return End or Beginning of File Condition
%EQUAL - Return Exact Match Condition
%ERROR - Return Error Condition
%FLOAT - Convert to Floating Format
%FOUND - Return Found Condition
%GRAPH - Convert to Graphic Value
%HOURS - Number of Hours
%INT - Convert to Integer Format
%INTH - Convert to Integer Format with Half Adjust
%LEN - Get or Set Length
%LOOKUPxx - Look Up an Array Element
%MINUTES - Number of Minutes
%MONTHS - Number of Months
%MSECONDS - Number of Microseconds
%NULLIND - Query or Set Null Indicator
%OCCUR - Set/Get Occurrence of a Data Structure
%OPEN - Return File Open Condition
%PADDR - Get Procedure Address
%PARMS - Return Number of Parameters
%REALLOC - Reallocate Storage
%REM - Return Integer Remainder
%REPLACE - Replace Character String
%SCAN - Scan for Characters
%SECONDS - Number of Seconds
%SHTDN - Shut Down
%SIZE - Get Size in Bytes
%SQRT - Square Root of Expression
%STATUS - Return File or Program Status
%STR - Get or Store Null-Terminated String
%SUBDT - Extract a Portion of a Date, Time, or Timestamp
%SUBST - Get Substring
%THIS - Return Class Instance for Native Method
%TIME - Convert to Time
%TIMESTAMP - Convert to Timestamp
%TLOOKUPxx - Look Up a Table Element
%TRIM - Trim Blanks at Edges
%TRIML - Trim Leading Blanks
%TRIMR - Trim Trailing Blanks
%UCS2 - Convert to UCS-2 Value
%UNS - Convert to Unsigned Format
%UNSH - Convert to Unsigned Format with Half Adjust
%XFOOT - Sum Array Expression Elements
%XLATE - Translate
%YEARS - Number of Years
Tuesday, February 2, 2010
WHATS THE HELL IS THIS 'HAL' ?
below gives aleast what that means http://packages.ubuntu.com/dapper/hal-device-manager
see the wiki http://en.wikipedia.org/wiki/Hardware_abstraction_layer
But enjoy learning from Linux
Creating DDS for Physical File (PF)
Physical file is like a Table in the oracle database . Using select statments and RUNQRY its possible to access the table
step1: wrkmbrpdm ( in command line )
F6 option is for creating new DDS,RPG,CL etc
The source file for DDS is QDDSSRC and library for me it is DAVNAV1
Source member is the name of the Physical file and source type is PF( Physical file )
Now we are entering into the DDS creation. We have to follow below sequence
1. File level entries
2. record level entries
3. Field level entries
4. Key field lvel entries
step1:
The Functions(F4 - Prompt )- UNIQUE have used for keyword is used to indicate that the value of the key field in each record in the file must be unique ( duplicate records are not allowed )
step2:
In record row give the Name type - R and also the corresponding optional text also can be mention in the function field
step3:
The fields (analogy columns) can be mentioned in next line
step4:
Key field level entries is the last preceeding with 'K'
The DDS can be saved by typing 'FILE' in the top and enter
Compiling the DDS is easy using the option 14-Compile and errors can viewed through the spool files using 'SA' corresponding to the PF in screen
Entry
Meaning
A
Character
P
Packed decimal
S
Zoned decimal
B
Binary
F
Floating point
H
Hexadecimal
L
Date
T
Time
Z
Timestamp
Notes:
strsql from command
insert into student values ('Naveen',1000,50) 1 rows inserted in STUDENT in DAVNAV1.
AS400 machine learning
Its very difficult for me to study these IBM (iSeries)machines
http://en.wikipedia.org/wiki/IBM_System_i, but slowly am getting some basic findings .
Two weeks back I got access to one online AS400 machine through internet . So learning RPGLE ,CL and basic commands we can practice in my UBUNTU.
just telnet pub1.rzkh.de
Tuesday, January 12, 2010
JOB SATISFACTION
Let me brief this word 'job satisfaction'
100 percentage saturation in the word 'JOB' is achievable or not ? I would say horribly unanswerable question.
Most of the students( case of Me too ) reaching MNC s and sells their brain to silly things ..simply silly things or keeps most of the time their brain in switch off state.
Sometimes I feel salary matters, but someone like me coming from Electronics background and trying to expertise in MS excel or something , pains me why i have studied 4 years in Btech. What is the meaning of Btech ....
But of course I am sure that there are solution to overcome this by selecting good career path and doing something effective or good .But I am not sure whether it is achievable for me. May this is because I like this idle state more than going for a risk.
If you are doing something with Full mind and getting preferable outcome and benefit , then its a state of satisfaction or saturation. ( This is my definition for satisfaction )
May I show you some cases of this :
1. Doing something with full mind and not getting enough outcome ( really discouraging feeling )
2. Not getting full mind to do thing, may be because the feeling of nothing gains from present work, can not expertise in this field or very poor idea on the present work etc
Sometimes I feel why I can't find out the correct path .. what I know ? Nothing I know to do myself . But I have some in built abilities , may be those can not make much output as money .. but I would like to say those works I likes more .
But I am hearing lot of advise like if we try to put full mind and effort , it will produce more outcome and satisfaction .. try to expertise in the current working field. But I am not sure that is correct or not.
Job satisfaction rate depends on individual, but much he utilize his brain and effort on his favorite area even though the outcome is less ..its somewhat manageable otherwise mind will not set anywhere .. that is what my experience
I will never ever leave my interesting areas and always try to learn something new ... at least I will keep this as my hobby that may increase my mind satisfaction level.