//@Name:Last Dividend Paid //@Description:Displays information on the last paid dividend //@Returns:Text //@Env:Production //@Width:250 // Care has been taken in preparing this code but it is provided without guarantee. // You are welcome to modify and extend it. Please add your name as a modifier if you distribute it. //Coded by: Richard Chiesa, ShareScript Support function init() { } function getVal(share) { var exDates = share.getResultArray(-1,Result.ExDivDate).concat(share.getResultArray(0,Result.ExDivDate)).concat(share.getResultArray(1,Result.ExDivDate)); var payDates = share.getResultArray(-1,Result.DivPayDate).concat(share.getResultArray(0,Result.DivPayDate)).concat(share.getResultArray(1,Result.DivPayDate)); var divAmount = share.getResultArray(-1,Result.Dividend).concat(share.getResultArray(0,Result.Dividend)).concat(share.getResultArray(1,Result.Dividend)); var divType = share.getResultArray(-1,Result.Type).concat(share.getResultArray(0,Result.Type)).concat(share.getResultArray(1,Result.Type)); for (var i=divAmount.length;i>0;i--) { if (divType[i] == "Announced" || divType[i] == "Final" || divType[i] == "Q3" || (divType[i] == "Interim" && divType[i-1] == "Q1")) { divAmount[i] -= divAmount[i-1]; } } var isEstimated = []; var latestPay = 0; //array number of the latest pay date var latestEx = 0; //array number of the latest ex div date var today = new Date(); //remove any blank ex-div dates for (i=0;i=0;i--) { if (payDates[i]<=today) { latestPay = i; break; } } if (latestPay == undefined) return; for (i=exDates.length-1;i>=0;i--) { if (exDates[i]