|
Here is an example of deleting records from a file I wrote yesterday. Add and Change is very similar. import java.io.*; import java.util.*; import com.ibm.as400.access.*; public class pwdrstprg { // End of Class /** Constructor for this class * @return nothing * @param mySystem com.ibm.as400.access.AS400 * */ public pwdrstprg(AS400 mySystem) { String Library = "ZAID"; String myFile = "DBFPPR30"; String year = new String((new char[4])); String month = new String((new char[2])); String day = new String((new char[2])); // Specify File Location QSYSObjectPathName filePathName = new QSYSObjectPathName(Library,myFile,"FILE"); SequentialFile fileObj = new SequentialFile(mySystem,filePathName.getPath()); try { // Retrieve a record format AS400FileRecordDescription recDesc = new AS400FileRecordDescription(mySystem,filePathName.getPath()); fileObj.setRecordFormat(recDesc.retrieveRecordFormat()[0]); // Open the file fileObj.open(AS400File.READ_WRITE,0,AS400File.COMMIT_LOCK_LEVEL_NONE); // Read a record Record record = fileObj.readNext(); // Process all records in the file while (record != null) { // Process a record year = ((String)record.getField("TRYR1")).trim(); month= ((String)record.getField("TRMM1")).trim(); day = ((String)record.getField("TRDD1")).trim(); // This function will return true if password is expiring in 2 weeks if (isExpired(year,month,day)) { fileObj.deleteCurrentRecord(); } record = fileObj.readNext(); } fileObj.close(); } catch (Exception e) { System.out.println("Error 1 - " + e.getMessage()); // End of catch (Exception e) } finally { try { fileObj.close(); } catch (Exception e1) {} } System.exit(0); // End of function ID } /** * @return String * @param mySystem com.ibm.as400.access.AS400 * @param CurrentUserProfile java.lang.String */ // This method calculates password expiry date and returns a flag private static boolean isExpired(String year, String month, String day) { boolean flag = false; // First incomming date will be converted from string format to int // This is how to convert CHAR to int ==> (int i = Integer.valueOf("22").intValue()) int yyyy = Integer.valueOf(year).intValue(); int mm = Integer.valueOf(month).intValue(); int dd = Integer.valueOf(day).intValue(); int yy = yyyy - 1900; // Now create a Date Object with yymmdd java.util.Date pwd1 = new java.util.Date(yy,mm,dd); // Add 14 Days to Last processed Date to get record expiry Date Timestamp ExpireDate = new Timestamp((pwd1).getTime()); Calendar cal1 = Calendar.getInstance(); cal1.setTime(ExpireDate); cal1.add(Calendar.DAY_OF_YEAR,14); ExpireDate.setTime(cal1.getTime().getTime()); // Prepare Password Check Date Timestamp CheckDate = new Timestamp((new java.util.Date()).getTime()); Calendar cal2 = Calendar.getInstance(); cal2.setTime(CheckDate); CheckDate.setTime(cal2.getTime().getTime()); if (CheckDate.after(ExpireDate)) { flag = true; } return flag; } /** * @return void * @param * @param */ public static void main(String[] args) { // Define AS400 object AS400 mySystem = new AS400("SYSTEM","USERID","PASSWORD"); pwdrstprg readpf10 = new pwdrstprg(mySystem); } } Dan Rasch <drasch@mail.win.org> on 07/14/2000 08:52:51 AM Please respond to JAVA400-L@midrange.com To: JAVA400-L@midrange.com cc: Subject: A basic file update program I am new at JAVA (coming from an RPG and COBOL background), and looking for an example of a basic file update program. Something that will perform the add, change and delete functions - in the simplest form, it would look alot like a DFU program. I have searched the web, but the examples I have seen have not dealt with much file I/O. Does anyone know of a good site where I could find such an example? TIA, Dan Rasch - because if the human species concentrated on the really important things in life, there would be a shortage of fishing poles! +--- | This is the JAVA/400 Mailing List! | To submit a new message, send your mail to JAVA400-L@midrange.com. | To subscribe to this list send email to JAVA400-L-SUB@midrange.com. | To unsubscribe from this list send email to JAVA400-L-UNSUB@midrange.com. | Questions should be directed to the list owner: joe@zappie.net +--- +--- | This is the JAVA/400 Mailing List! | To submit a new message, send your mail to JAVA400-L@midrange.com. | To subscribe to this list send email to JAVA400-L-SUB@midrange.com. | To unsubscribe from this list send email to JAVA400-L-UNSUB@midrange.com. | Questions should be directed to the list owner: joe@zappie.net +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.