Component File &logFile;
&Delimiter = Char(9);
&logFile = GetFile(GetEnv("PSPRCSLOGDIR") | "\Upload logFile.XLS", "W", %FilePath_Absolute);
&logFile.WriteLine("Claim Req Id" | &Delimiter | "Claim Status" | &Delimiter | "Expense Document Number" | &Delimiter | "Expense Document Date" | &Delimiter | "Payment Document Number" | &Delimiter | "Payment Document Date");
import ZIN_COMMON:*;
Local File &APPL_FILE;
Local array of string &APP_ARY;
Local string &APPL_DATA;
Component File &logFile;
&Delimiter = Char(9);
Local ZIN_COMMON:AppEngineBase &AppEngine = create ZIN_COMMON:AppEngineBase();
Local ZIN_COMMON:ReportBase &Value = create ZIN_COMMON:ReportBase();
rem SQLExec("Select Z_FILE_PATH from PS_ECL_SAP_TBL WHERE OPRID = :1 AND RUN_CNTL_ID = :2", Z_DC_AET.OPRID, Z_DC_AET.RUN_CNTL_ID, &FILE_PATH);
REM &FILE_PATH = "d:\Files\INVC.csv";
rem &FILE_PATH = "C:\temp\SAP.txt";
REM &FILE_PATH = "C:\Documents and Settings\Admin\Desktop\SAP.txt";
rem MessageBox(0, "", 0, 0, "File Path :" | &FILE_PATH);
&Filepath = GetAttachment("ftp://Admin:Mphasis123@10.32.16.26/", "SAP.txt", "C:\temp\SAP.txt");
&APPL_FILE = GetFile("C:\temp\SAP.txt", "E", %FilePath_Absolute);
If &APPL_FILE.IsOpen Then
While &APPL_FILE.ReadLine(&APPL_DATA);
&APP_ARY = Split(&APPL_DATA, ";");
&id = &APP_ARY [1];
&empl_id = &APP_ARY [2];
&exp_doc_no = &APP_ARY [3];
&date = &APP_ARY [4];
&exp_doc_date = DateValue(&date);
&pay_doc_no = &APP_ARY [5];
&date_1 = &APP_ARY [6];
&pay_doc_date = DateValue(&date_1);
SQLExec("SELECT ECL_STATUS FROM PS_ECL_CLAIMS_HDR WHERE ECL_CLAIM_REQ_ID =:1", &id, &ecl_status);
SQLExec("SELECT ECL_STATUS FROM PS_ECL_ARF_HDR WHERE ECL_ARF_REQ_ID =:1", &id, &arf_status);
&id_type = Substring(&id, 1, 3);
MessageBox(0, "", 0, 0, &id_type);
<*
MessageBox(0, "", 0, 0, &id);
MessageBox(0, "", 0, 0, &empl_id);
MessageBox(0, "", 0, 0, &Sap_id);
MessageBox(0, "", 0, 0, &first_date);
MessageBox(0, "", 0, 0, &arf_id);
MessageBox(0, "", 0, 0, &second_date);
*>
Local Record &ECL_SAP = CreateRecord(Record.ECL_CLAIMS_HDR);
&ECL_SAP.SelectByKey();
If &id_type = "EXP" Then
If &ecl_status = "PT" Then
SQLExec("UPDATE PS_ECL_CLAIMS_HDR SET ECL_EXP_DOC_NUM=:1,ECL_EXP_DOC_DATE=:2,ECL_PAY_DOC_NUM=:3,ECL_PAY_DOC_DATE=:4,ECL_STATUS='PD' WHERE ECL_CLAIM_REQ_ID=:5 AND EMPLID=:6", &exp_doc_no, &exp_doc_date, &pay_doc_no, &pay_doc_date, &id, &empl_id);
<*
&ECL_SAP.ECL_CLAIM_REQ_ID.Value = &id;
&ECL_SAP.EMPLID.Value = &empl_id;
&ECL_SAP.ECL_EXP_DOC_NUM.Value = &exp_doc_no;
&ECL_SAP.ECL_EXP_DOC_DATE.Value = &exp_doc_date;
&ECL_SAP.ECL_PAY_DOC_NUM.Value = &pay_doc_no;
&ECL_SAP.ECL_PAY_DOC_DATE.Value = &pay_doc_date;
&ECL_SAP.ECL_STATUS.Value = "PD";
&ECL_SAP.Update();
*>
End-If;
End-If;
If &id_type = "ARF" Then
If &arf_status = "PT" Then
SQLExec("UPDATE PS_ECL_ARF_HDR SET ECL_EXP_DOC_NUM=:1,ECL_EXP_DOC_DATE=:2,ECL_PAY_DOC_NUM=:3,ECL_PAY_DOC_DATE=:4,ECL_STATUS='PD' WHERE ECL_ARF_REQ_ID=:5 AND EMPLID=:6", &exp_doc_no, &exp_doc_date, &pay_doc_no, &pay_doc_date, &id, &empl_id);
End-If;
End-If;
If &id_type = "EXP" Then
SQLExec("SELECT XLATLONGNAME FROM PSXLATITEM A WHERE A.EFFDT = (SELECT MAX(A_ED.EFFDT) FROM PSXLATITEM A_ED WHERE A.FIELDNAME = A_ED.FIELDNAME AND A.FIELDVALUE = A_ED.FIELDVALUE AND A_ED.EFFDT <= GETDATE()) AND FIELDNAME='ECL_STATUS' AND FIELDVALUE =:1", &ecl_status, &Claim_Status);
End-If;
If &id_type = "ARF" Then
SQLExec("SELECT XLATLONGNAME FROM PSXLATITEM A WHERE A.EFFDT = (SELECT MAX(A_ED.EFFDT) FROM PSXLATITEM A_ED WHERE A.FIELDNAME = A_ED.FIELDNAME AND A.FIELDVALUE = A_ED.FIELDVALUE AND A_ED.EFFDT <= GETDATE()) AND FIELDNAME='ECL_STATUS' AND FIELDVALUE =:1", &arf_status, &Claim_Status);
End-If;
If &ecl_status = "PT" Then
&Claim_Status = "Paid";
End-If;
If &arf_status = "PT" Then
&Claim_Status = "Paid";
End-If;
If (&Claim_Status <> "Paid") Then
&exp_doc_no = "";
&exp_doc_date = "";
&pay_doc_no = "";
&pay_doc_date = "";
End-If;
&logFile.WriteLine(&id | &Delimiter | &Claim_Status | &Delimiter | &exp_doc_no | &Delimiter | &exp_doc_date | &Delimiter | &pay_doc_no | &Delimiter | &pay_doc_date);
End-While;
&APPL_FILE.Close();
Else
&Msg_Str = "File could not be opened. Please check the File Path";
MessageBox(0, "", 0, 0, &Msg_Str);
End-If;
<*########################################################################
Developer: Kondal
Date: 07-02-2012
Description:To Upload the Form16 letter
##########################################################################*>
Local array of string &FNAMES;
Local File &MYFILE, &logfile;
Local string &file_name;
&delimeter = Char(9);
&logfile = GetFile("test.xls", "W", %FilePath_Absolute);
&logfile.WriteLine("Employee ID" | &delimeter | "Year" | &delimeter | "Status");
SQLExec("Select SETID,ZIN_FIELD7 from PS_ZIN_FORM16_RCR WHERE OPRID = :1 AND RUN_CNTL_ID = :2", %OperatorId, Z_DC_AET.RUN_CNTL_ID, &Bsn, &FILE_PATH);
MessageBox(0, "", 0, 0, "&FILE_PATH: " | &FILE_PATH);
&FNAMES = FindFiles(&FILE_PATH | "*" | "F16.pdf", %FilePath_Absolute);
MessageBox(0, "", 0, 0, "&FNAMES: " | &FNAMES);
While &FNAMES.Len > 0
&MYFILE = GetFile(&FNAMES.Shift(), "R", %FilePath_Absolute); /* Open each file */
/* Process the file contents */
&file_name = &MYFILE.Name;
MessageBox(0, "", 0, 0, &file_name);
&URL_ID = "ZIN_FORM16_UPL";
&URL_ID = "URL." | &URL_ID;
&URL = GetURL(@&URL_ID);
&ATTACHSYSFILENAME = &file_name;
&ATTACHUSERFILE = &file_name;
MessageBox(0, "", 0, 0, &ATTACHUSERFILE);
If FileExists(&ATTACHUSERFILE, %FilePath_Absolute) Then
&RETCODE = PutAttachment(&URL, &ATTACHSYSFILENAME, &ATTACHUSERFILE);
If (&RETCODE = %Attachment_Success) Then
MessageBox(0, "Letter Upload Status", 21000, 82, "Letter upload succeeded" | &file_name);
&emplid = Substring(&file_name, 17, 7); /*change the year field length*/
&year = Substring(&file_name, 25, 9); /*change the year field length*/
&logfile.WriteLine(&emplid | &delimeter | &year | &delimeter | "Success");
End-If;
If (&RETCODE = %Attachment_Cancelled) Then
MessageBox(0, "Letter Upload Status", 21000, 83, "Letter upload cancelled" | &file_name);
&emplid = Substring(&file_name, 17, 7); /*change the year field length*/
&year = Substring(&file_name, 25, 9); /*change the year field length*/
&logfile.WriteLine(&emplid | &delimeter | &year | &delimeter | "Failure");
End-If;
Else
MessageBox(0, "Letter Upload Status", 21000, 84, "Letter does not exists" | &file_name);
End-If;
&MYFILE.Close();
End-While;
Monday, January 30, 2017
get attachent
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment