Skip to main content
Question

automatically edit record after copyMasterDetail


So in a single form I have two fields worth mentioning.

a formula checkbox watching for "copy of" to appear it is true when present. and if opened in edit while true a rule will clear that field

and another formula text that contains this:

var text base = URLRoot() & "db/" & Dbid();

var text eAPI = $base & "?a=er&rid=" & [Record ID#]&"&ticket=" & [Ticket] & "&apptoken=" & [Token];

var text cJS="javascript:void(copyMasterDetailButtonHandler('&relfids=192,194,250&copyFid=327&destrid=0&sourcerid=" & [Record ID#] & "','"& Dbid()&"'))";

var text cop =  "<a id='userButton' class='Vibrant Primary' href=\"" &  $cJS &"\">Copy Detailed Quote</a>";

var text unl = "<a id='userButton' class='Vibrant Danger' href=" &$eAPI &"\">Unlock and edit this Quote</a>";

var text InnerText=

If([Clone Trigger]=true,$unl,$cop);

$InnerText

the second part of the button is currently a failsafe incase they back out of the record before saving. How would i modify this further to include a redirect to the edit record $eAPI Or set up a script to hijack the browser to redirect based on [Clone Tigger] true value by replacing $unl
This topic has been closed for replies.

well no one else helped me so I ended up doing this for the button code:



    var text base = URLRoot() & "db/" & Dbid();
    var text eAPI = $base & "?a=er&rid=" & [Quote ID#]&"&ticket=" & [Ticket] & "&apptoken=" & [Token];
    var text cJS ="javascript:void(copyMasterDetailButtonHandler('&relfids=192,194,250&copyFid=327&destrid=0&sourcerid=" & [Quote ID#] & "','"& Dbid()&"'))";
    var text cop = "<a id='userButton' class='Vibrant Primary' href=\"" & $cJS &"\">Copy Detailed Quote</a>";
    var text unl = "<a id='userButton' class='Vibrant Danger' href=" &$eAPI &"\">Click if not redirected to unlock and edit</a>";
    var text red =$unl &"<br>"&[iol]&"redirect.js"&[/iol];
    var text InnerText=
    If([Clone Trigger]=true,$red,$cop);

    $InnerText




and in the script redirect.js:

    (function() {
      //get url string
      var str = window.location.href;
      //change view to edit
      String.prototype.replaceAt = function(str, character) {
        return this.substr(0, str) + character + this.substr(str + character.length);
      }
      str = str.replaceAt(49, "e");
      setTimeout(function() {
        window.location.href = str;
      }, 800);

    })();



which just takes it from view to edit

I will try this code.