Что не так в коде (1С)?
Что не правильно?
1) ПустаяСтрока() - функция для проверки строковой переменной на наличие значимых символов (пробелы, табуляции и прочие разделители игнорируются) - явно не преднозначено для проверки суммы итогового стажа, который будет преобразовываться к строке "0" и функция всегда будет давать результат Ложь. Если итоговый стаж - это не дни итогового стажа, а дата увольнения (с названиями вам еще работать и работать - сами себя путаете), то дата преобразовывается тоже к строковому литералу, который выдаст аналогичную Ложь. Потому содержимое внутри условия никогда не будет выполнено!
2) Обращения вида "Объект." ссылаются на реквизиты вашего документа, а не на реквизиты строк табличной части! Вам нужно сперва узнать значение текущей строки табличной части (под курсором) и дальше работать уже с этой строкой.
3) Что вы там пытались присвоить в двоичном формате непонятно, но явно не в тему.
4) Предположим, что вы своими ноликами-единичками хотели обнулить дату. Тогда согласно вашей формуле вы к пустой дате добавляете сумму количество секунд от даты приема с количества секунд от даты увольнения - это где-то 4036 год получится.
UPD. Дополнено после переписки в комментариях
1) Что должно быть в Итого? По идее количество месяцев! Тип "Строка" тут ни к чему - количество это всегда тип "Число".
2) На поле табличной части вам нужно добавить обработчик события ПриИзменении с примерно следующим содержимым:&НаКлиенте
Процедура СтажРаботыПриИзменении(Элемент)
	
	РедактируемаяСтрока = Элементы.СтажРаботы.ТекущиеДанные;
	
	// строку могли удалить и в таблице ничего нет
	Если РедактируемаяСтрока = Неопределено Тогда
		Возврат;
	КонецЕсли; 
	
	// обязательно делаем проверку данных!
	Если РедактируемаяСтрока.ДатаПриема >= РедактируемаяСтрока.ДатаУвольнения Тогда
		РедактируемаяСтрока.Итог = 0;
		Возврат;
	КонецЕсли; 
	
	// в зависимости от требуемого значения делаем расчет
	// еще важен способ округления - к меньшему целому или к большему
	ОтработаноСекунд = РедактируемаяСтрока.ДатаУвольнения - РедактируемаяСтрока.ДатаПриема;
	ОтработаноЧасов = ОтработаноСекунд / 60;
	ОтработаноДней = ОтработаноСекунд / 86400;
	
	// если нужно значение месяцев или лет, то используем сдвиги в цикле
	ОкруглятьКБольшему = Истина;  // 1 день сверху дасть дополнительный 1 месяц или 1 год
	
	ОтработаноМесяцев = ?(ОкруглятьКБольшему, 0, -1);
	СкользящийМесяц = РедактируемаяСтрока.ДатаПриема;
	Пока СкользящийМесяц < РедактируемаяСтрока.ДатаУвольнения Цикл
		ОтработаноМесяцев = ОтработаноМесяцев + 1;
		СкользящийМесяц = ДобавитьМесяц(СкользящийМесяц, 1);
	КонецЦикла;
	
	ОтработаноЛет = ?(ОкруглятьКБольшему, 0, -1);
	СкользящийГод = РедактируемаяСтрока.ДатаПриема;
	Пока СкользящийГод < РедактируемаяСтрока.ДатаУвольнения Цикл
		ОтработаноЛет = ОтработаноЛет + 1;
		СкользящийГод = ДобавитьМесяц(СкользящийГод, 12);
	КонецЦикла;
	
	// выводим значение на форму
	РедактируемаяСтрока.Итог = ОтработаноМесяцев;
	
КонецПроцедуры
Но я не умерен в том, что вам нужен реквизит стажа. Возможно было бы достаточно "виртуального реквизита" (добавленого в табличную часть на форме) действительно с типом Строки, куда при открытии и изменении выводить расчетные данные в виде "10 лет, 4 мес, 17 дней".
Да все так. 
Что вам конкретно не нравится? Что не устраивает?
Вы присвоили в коде значение переменной - вроде без ошибок. В чем проблема то?