Guest User

Untitled

a guest
Jan 22nd, 2019
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.84 KB | None | 0 0
  1. <apex:page controller="importDataFromCSVController" >
  2. <apex:form >
  3. <apex:pagemessages />
  4. <apex:pageBlock >
  5. <apex:pageBlockSection columns="7" >
  6. <apex:inputFile value="{!csvFileBody}" filename="{!csvAsString}"/>
  7. <apex:commandButton value="Import Timesheet" action="{!importCSVFile}"/>
  8. </apex:pageBlockSection>
  9. </apex:pageBlock>
  10. <apex:pageBlock >
  11. <apex:pageblocktable value="{!applist}" var="app">
  12. <apex:column value="{!app.id__c}" />
  13. <apex:column value="{!app.Total_Number_of_Hours_worked__c}" />
  14. <apex:column value="{!app.Total_Cleint_Holidays__c}" />
  15. <apex:column value="{!app.Total_Number_of_Days_worked__c}" />`
  16. </apex:pageblocktable>
  17. </apex:pageBlock>
  18. </apex:form>
  19. </apex:page>
  20.  
  21. public void importCSVFile(){
  22. try{
  23. csvAsString = csvFileBody.toString();
  24. csvFileLines = csvAsString.split('n');
  25.  
  26. for(Integer i=1;i<csvFileLines.size();i++){
  27. appointment__c appObj = new appointment__c () ;
  28. string[] csvRecordData = csvFileLines[i].split(',');
  29. appObj.id__c = csvRecordData[24] ;
  30. appObj.Total_Number_of_Hours_worked__c = Decimal.Valueof(csvRecordData[168]);
  31. appObj.Total_Cleint_Holidays__c = Decimal.Valueof(csvRecordData[172]);
  32. appObj.Total_Number_of_Days_worked__c = Decimal.Valueof(csvRecordData[176]);
  33. applist.add(appObj);
  34. }
  35. //insert acclist;
  36. }
  37. catch (Exception e)
  38. {
  39. ApexPages.Message errorMessage = new ApexPages.Message(ApexPages.severity.ERROR,'An error has occured while importin data Please make sure input csv file is correct');
  40. ApexPages.addMessage(errorMessage);
  41. }
  42. }
  43. }
  44.  
  45. intIndex = 0;
  46. boolFound = false;
  47. while(intIndex < csvFileLines.size() && !boolFound) {
  48. string[] csvRecordData = csvFileLines[intIndex].split(',');
  49. if(!csvRecordData[0].isNumeric()) {
  50. boolFound = true;
  51. }
  52. }
  53.  
  54.  
  55. TotalNumberofHoursworked = csvFileLines[intIndex];
  56. Total Cleint Holidays = csvFileLines[intIndex + 1]
  57.  
  58. csvFileLines = new String[]{}; //create an array of string
  59.  
  60. csvAsString = bfile.toString() ; //convert the blob into a string file in order to enable processing
  61. csvFileLines = csvAsString.split('n'); //split the string file lines so that the
  62. //records/rows can be accessible
  63.  
  64. String[] columns = csvFileLines[rowIndex].split(',',-1);
  65. for(integer j= 0; j<columns.size(); j++){
  66.  
  67. if (j== colIndex){
  68.  
  69. Value = columns[colIndex];
Add Comment
Please, Sign In to add comment