private Task <PrevYearManureApplViewModel> GetPrevYearManureAsync(string fldName)
        {
            PrevYearManureApplViewModel manureVM = new PrevYearManureApplViewModel();

            // get the current associated value for nitrogen credit.  Note, can be null
            SERVERAPI.Utility.ChemicalBalanceMessage calculator = new Utility.ChemicalBalanceMessage(_ud, _sd);

            Field fld = _ud.GetFieldDetails(fldName);

            manureVM.display = false;
            if (fld.crops != null)
            {
                if (fld.crops.Count() > 0)
                {
                    manureVM.display = _sd.wasManureAddedInPreviousYear(fld.prevYearManureApplicationFrequency);
                    if (manureVM.display)
                    {
                        manureVM.fldName = fldName;
                        if (fld.prevYearManureApplicationNitrogenCredit != null)
                        {
                            manureVM.nitrogen = fld.prevYearManureApplicationNitrogenCredit;
                        }
                        else
                        {
                            // lookup default Nitrogen credit
                            manureVM.nitrogen = calculator.calcPrevYearManureApplDefault(fldName);
                        }
                    }
                    else
                    {
                        fld.prevYearManureApplicationNitrogenCredit = null;
                        _ud.UpdateField(fld);
                    }
                }
                else
                {
                    fld.prevYearManureApplicationNitrogenCredit = null;
                    _ud.UpdateField(fld);
                }
            }
            else
            {
                //reset the nitrogen credit to null
                fld.prevYearManureApplicationNitrogenCredit = null;
                _ud.UpdateField(fld);
            }
            return(Task.FromResult(manureVM));
        }