Here is a code:
Scriptname TOWBook extends ActiveMagicEffectObjectReference Property BookTarget autoTOWDoorBack Property Target auto ;Door with attached TOWDoorBack Script are target of this property (chosen in CK)ObjectReference ResultEvent OnEffectStart(Actor Caster, Actor SpellTarget)Debug.Notification("Started GetFormID: " + Result.GetFormID())if(Game.GetPlayer().GetParentCell() != BookTarget.GetParentCell()) Result = Game.GetPlayer().PlaceAtMe(Game.GetForm(0x0000003B), 1, true) Debug.Notification("Temp: " + Result.GetFormID()) Utility.Wait(5) Target.Target = Result if (Result.GetFormID() != 0) Game.GetPlayer().MoveTo(BookTarget) else Debug.Notification("Error! Cast again!") endif else Debug.Notification("You already at home!")endIfDebug.Notification("Finished GetFormID: " + Result.GetFormID() + " " + Target.Target.GetFormID())EndEventTeleporting is working and result of Result.GetFormID() is number (so game created object) but Target.Target.GetFormID() is = 0 - so the reference wasn't passed.
Scriptname TOWDoorBack extends ObjectReference ObjectReference Property Target autoEvent OnActivate(ObjectReference akRef)Debug.Notification("Door GetFormID: " + Target.GetFormID())Game.GetPlayer().MoveTo(Target)if(Game.GetPlayer().GetParentCell() == Target.GetParentCell()) Target.Delete() endIfEndEventThis script is attached to door. Result of Target.GetFormID() is 0.
Any ideas?

So problem solved...