{Dangerous Content?} Job offer

Steven Suson suson at TuckerEnergy.com
Wed Oct 22 20:26:14 UTC 2003


    Yes indeed, something ate my template :-[ . I'll insert it inline 
below.

    As for what an ECN is.... Upon successful completion of an ECR (i.e. 
it was FIXED), a board decides what actual changes need to be made to 
schematics, software, hardware, etc. Once this is done, email 
notifications must be sent out to all individuals on the ECR (i.e. bug) 
email list, as well as a predetermined list of others (managers and what 
not), therefore formally notifying all of these as to the actual 
solution to the problem, and making it a matter of record.

Steve


<Template>
<!-- 1.0 at bugzilla.org -->
[% UNLESS header_done %]
  [% PROCESS global/header_ecn.html.tmpl
    title = "Engineering Change Notice for ECR $bug.bug_id"
    h1 = ""
    h2 = ""
   %]
[% END %]

[% USE date %]

[% electrical_mgr = "jbrought at TuckerEnergy.com" %]
[%# electrical_mgr = "suson at TuckerEnergy.com" %]
[% mechanical_mgr = "" %]
[% manufacturing_mgr = "Don.Hunt at TuckerEnergy.com" %]
[% software_mgr = "suson at TuckerEnergy.com" %]
[% general_mgr = "jbrought at TuckerEnergy.com" %]
[% qa_mgr = "" %]
[% other_mgr = "" %]

<form name="f" method="post" action="process_ecn.cgi">

  <input type="hidden" name="id" value="[% bug.bug_id %]">

  <script type="application/x-javascript" language="JavaScript">
    <!-- Begin
      function setApprovalDate(chkbox, field)
      {
        if (chkbox.checked)
          field.value = "[% date.format( format = '%Y-%m-%d' ) %]";
        else
          field.value = "";
      }
    // End -->
  </script>

  <table cellpadding="2" border="1" width="100%">
    <tr align="center" bgcolor="gray">
      <td colspan="2">
        <b>Product</b>
      </td>
      <td colspan="2">
        <a href="describecomponents.cgi?product=[% bug.product FILTER 
url_quote %]"><b>Component</b></a>
      </td>
      <td colspan="2">
        <a href="bug_status.html#severity"><b>Severity</b></a>
      </td>
    </tr>
    <tr align="center">
      <td colspan="2">
        [% bug.product FILTER html %]
      </td>
      <td colspan="2">
        [% bug.component FILTER html %]
      </td>
      <td colspan="2"
        [% USE autoformat(case => 'upper') %]
        [% myseverity = bug.bug_severity FILTER html %]

        [% IF bug.bug_severity == 'showstopper' %]
          bgcolor="red"
        [% END %]>
        <b>[% autoformat( myseverity ) %]</b>
      </td>
    </tr>
    <tr bgcolor="gray" align="center">
      <td>
       <b>Report Number</b>
       <small>(i.e. ECN #)</small>
      </td>
      <td>
        <b>ECR Origination Number</b>
      </td>
      <td>
        <b>Initiator's Name</b>
      </td>
      <td>
        <b>Internal Customer</b>
      </td>
      <td>
        <b>External Customer</b>
      </td>
      <td>
        <b>Date</b>
        <small>(MM/DD/YY)</small>
      </td>
    </tr>
    <tr align="center">
      <td>
        ECN 
      </td>
      <td>
        <a href="[% Param('urlbase') %]show_bug.cgi?id=[% bug.bug_id 
%]">[% bug.bug_id %]</a>
      </td>
      <td>
        [% bug.reporter FILTER html %]
      </td>
      <td>
        <input type="TEXT" name="internalcustomer" size="30">
      </td>
      <td>
        <input type="TEXT" name="externalcustomer" size="30">
      </td>
      <td>
      [% my_ts = date.format( format = '%T %d:%m:%Y' ) %]
      [% date.format( my_ts, format = '%m/%d/%y' ) %]
      <input type="HIDDEN" name="creation_ts" value="[% date.format( 
my_ts, format = '%Y-%m-%d %T' ) %]">
      </td>
    </tr>
    <tr bgcolor="gray" align="center">
      <td>
        <b>Part Number</b>
      </td>
      <td>
        <b>Version</b>
      </td>
      <td colspan="3">
        <b>Description</b>
      </td>
      <td>
        <b>Next Assy Number</b>
      </td>
    </tr>
    <tr align="center">
      <td>
        [% bug.bug_file_loc FILTER html %]
      </td>
      <td>
        [% bug.version FILTER html %]
      </td>
      <td colspan="3">
        [% bug.short_desc FILTER html %]
      </td>
      <td>
        <input type="TEXT" name="nextassynum" size="16"
         onChange="this.form.nextassynum_other.value = this.value;">
      </td>
    </tr>
    <tr bgcolor="gray" align="center">
      <td colspan="6">
        <b>Description of Proposed Change(s)</b>
      </td>
    </tr>
    <tr align="left">
      <td colspan="6">
        <textarea name="change_desc" rows="6" cols="104"></textarea>
      </td>
    </tr>
    <tr align="center">
      <td colspan="6">
        <b>Engineering Change Board (ECB)</b>
      </td>
    </tr>
    <tr bgcolor="gray" align="center">
      <td>
        <b>Members Present</b>
      </td>
      <td>
        <b>General Manager</b>
      </td>
      <td>
        <b>Engineering Representative</b>
      </td>
      <td colspan="2">
        <b>Software Manager</b>
      </td>
      <td>
        <b>Drafting Manager</b>
      </td>
    </tr>
    <tr align="center">
      <td bgcolor="gray">
        <b><small>(please check)</small></b>
      </td>
      <td>
        <input type="CHECKBOX" name="initials_gm" value="initials_gm_chked">
      </td>
      <td>
        <input type="CHECKBOX" name="initials_engrep" 
value="initials_engrep_chked">
      </td>
      <td colspan="2">
        <input type="CHECKBOX" name="initials_sm" value="initials_sm_chked">
      </td>
      <td>
        <input type="CHECKBOX" name="initials_dm" value="initials_dm_chked">
      </td>
    </tr>
    <tr bgcolor="gray" align="center">
      <td colspan="2">
        <b>Engineering Decision / Action Required</b>
      </td>
      <td colspan="4">
        ** List / Attach ALL Supporting Documentation and/or Comments
      </td>
    </tr>
    <tr align="center">
      <td colspan="6">
        <textarea name="engaction" rows="6" cols="104"></textarea>
      </td>
    </tr>
  </table>

  [%# *** Attachments *** %]

  [% PROCESS attachment/list_ecn.html.tmpl
     attachments = ecn.attachments
     ecnid = ecn.ecn_id %]

  <table width="100%" cols="6" cellpadding="2" border="1">
    <tr bgcolor="gray" align="center">
      <td colspan="3">
        <b>EFFECTIVITY</b>
      </td>
      <td colspan="3">
        <b>APPROVAL</b>
      </td>
    </tr>
    <tr bgcolor="gray" align="center">
      <td colspan="2">
         
      </td>
      <td>
        <b>ACTION</b>
      </td>
      <td>
        <b>DEPARTMENT</b>
      </td>
      <td>
        <b>APPROVED</b>
      </td>
      <td>
        <b>DATE</b>
      </td>
    </tr>
    <tr align="center">
      <td rowspan="2">
        <b>PART NUMBER : </b>
        [% bug.bug_file_loc %]
      </td>
      <td bgcolor="gray">
        <b>STOCK</b>
      </td>
      <td>
        [% PROCESS myselect selname = "itemno_stock" %]
      </td>
      <td bgcolor="gray">
        <b>Electrical</b>
      </td>
      <td>
        [% PROCESS mgr_approval_chkbox cur_mgr="${electrical_mgr}" 
chkbox="elecdept_approval"
                                       chkbox_value="elecdept_approved" 
chkbox_ts="elecdept_approval_ts" %]
      </td>
      <td>
        <input type="HIDDEN" name="elecdept_approval_ts" value="">
         
      </td>
    </tr>
    <tr align="center">
      <td bgcolor="gray">
        <b>WIP</b>
      </td>
      <td>
        [% PROCESS myselect selname = "itemno_wip" %]
      </td>
      <td bgcolor="gray">
        <b>Mechanical</b>
      </td>
      <td>
        [% PROCESS mgr_approval_chkbox cur_mgr="${mechanical_mgr}" 
chkbox="mechdept_approval"
                                       chkbox_value="mechdept_approved" 
chkbox_ts="mechdept_approval_ts" %]
      </td>
      <td>
        <input type="HIDDEN" name="mechdept_approval_ts" value="">
         
      </td>
    </tr>
    <tr align="center">
      <td rowspan="2">
        <b>NEXT ASSEMBLY NUMBER</b>
        <input type="TEXT" name="nextassynum_other" size="16"
         onChange="this.form.nextassynum.value = this.value;">
      </td>
      <td bgcolor="gray">
        <b>STOCK</b>
      </td>
      <td>
        [% PROCESS myselect selname = "nextassyno_stock" %]
      </td>
      <td bgcolor="gray">
        <b>Manufacturing</b>
      </td>
      <td>
        [% PROCESS mgr_approval_chkbox cur_mgr="${manufacturing_mgr}" 
chkbox="mftgdept_approval"
                                       chkbox_value="mftgdept_approved" 
chkbox_ts="mftgdept_approval_ts" %]
      </td>
      <td>
        <input type="HIDDEN" name="mftgdept_approval_ts" value="">
         
      </td>
    </tr>
    <tr align="center">
      <td bgcolor="gray">
        <b>WIP</b>
      </td>
      <td>
        [% PROCESS myselect selname = "nextassyno_wip" %]
      </td>
      <td bgcolor="gray">
        <b>Software</b>
      </td>
      <td>
        [% PROCESS mgr_approval_chkbox cur_mgr="${software_mgr}" 
chkbox="softdept_approval"
                                       chkbox_value="softdept_approved" 
chkbox_ts="softdept_approval_ts" %]
      </td>
      <td>
        <input type="HIDDEN" name="softdept_approval_ts" value="">
         
      </td>
    </tr>
    <tr align="center">
      <td rowspan="3">
        <b>TOP ASSEMBLY NUMBER</b>
        <input type="TEXT" name="topassyno" size="16">
      </td>
      <td bgcolor="gray">
        <b>STOCK</b>
      </td>
      <td>
        [% PROCESS myselect selname = "topassyno_stock" %]
      </td>
      <td bgcolor="gray">
        <b>General Manager</b>
      </td>
      <td>
        [% PROCESS mgr_approval_chkbox cur_mgr="${general_mgr}" 
chkbox="gm_approval"
                                       chkbox_value="gm_approved" 
chkbox_ts="gm_approval_ts" %]
      </td>
      <td>
        <input type="HIDDEN" name="gm_approval_ts" value="">
         
      </td>
    </tr>
    <tr align="center">
      <td bgcolor="gray">
        <b>WIP</b>
      </td>
      <td>
        [% PROCESS myselect selname = "topassyno_wip" %]
      </td>
      <td bgcolor="gray">
        <b>Q.A.</b>
      </td>
      <td>
        [% PROCESS mgr_approval_chkbox cur_mgr="${qa_mgr}" 
chkbox="qadept_approval"
                                       chkbox_value="qadept_approved" 
chkbox_ts="qadept_approval_ts" %]
      </td>
      <td>
        <input type="HIDDEN" name="qadept_approval_ts" value="">
         
      </td>
    </tr>
    <tr align="center">
      <td bgcolor="gray">
        <b>FIELD</b>
      </td>
      <td>
        [% PROCESS myselect selname = "topassyno_field" %]
      </td>
      <td bgcolor="gray">
        <b>Other</b>
      </td>
      <td>
        [% PROCESS mgr_approval_chkbox cur_mgr="${other_mgr}" 
chkbox="otherdept_approval"
                                       chkbox_value="otherdept_approved" 
chkbox_ts="otherdept_approval_ts" %]
      </td>
      <td>
        <input type="HIDDEN" name="otherdept_approval_ts" value="">
         
      </td>
    </tr>
  </table>
  <p>
<center>
  <input type="SUBMIT" value="Commit" >
  <input type="RESET" value="Reset">
  <input type="BUTTON" value="Print" onClick="window.print()">
</center>
</form>

<hr>
<br>

[% PROCESS global/footer.html.tmpl %]


[%############################################################################%]
[%# Block for SELECT 
fields                                                  #%]
[%############################################################################%]

[% BLOCK select %] 
  <td>
    <select name="[% selname %]">
      [% FOREACH x = ${selname} %]
        <option value="[% x FILTER html %]"
          [% " selected" IF x == bug.${selname} %]>[% x FILTER html %]
        </option>
      [% END %]
    </select>
  </td>
  <td> </td>
[% END %]

[%############################################################################%]
[%# A customized Block for SELECT 
fields                                     #%]
[%############################################################################%]

[% BLOCK myselect %] 
  <select name="[% selname %]">
    [% FOREACH effectivity = [ 'USE_AS-IS' 'REWORK/RETROFIT' 'SCRAP' ] %]
      <option value="[% effectivity FILTER html %]">[% effectivity 
FILTER html %]</option>
    [% END %]
  </select>
[% END %]

[%############################################################################%]
[%# Block for MANAGER APPROVAL 
fields                                        #%]
[%############################################################################%]

[% BLOCK mgr_approval_chkbox %]
  [% IF user.login && user.login == "${cur_mgr}" %]
    <input type="CHECKBOX" name="[% chkbox %]" value="[% chkbox_value %]"
     onClick="setApprovalDate(this.form.[% chkbox %],this.form.[% 
chkbox_ts %])">
  [% ELSE %]
    <small>User not manager</small>
  [% END %]
[% END %]
</Template>

Christian Robottom Reis wrote:

>On Wed, Oct 22, 2003 at 03:03:05PM -0500, Steven Suson wrote:
>  
>
>>Currently, within our implementation of Bugzilla, we refer to "bugs" as 
>>ECR's (Engineering Change Requests). What we need to add is known as 
>>ECN's (Engineering Change Notifications). We are looking to have this 
>>    
>>
>
>Can you explain in simple terms what an ECN is? Bugzilla includes
>"notifications" in the 2.17 line, but I'm not sure if it matches the ECN
>definition of notification.
>
>  
>
>>implemented (using format=ecn and templates) for entry. What is needed 
>>is a way to enter new ECN's, query the ECN's (a simplistic query form 
>>would be adequate), and show ECN's. Therefore the Perl backend is 
>>obviously needed. I am attaching the ECN entry form template. If you 
>>have any questions, I will be more than happy to answer.
>>    
>>
>
>I think one of the mailers between you and us ate up your template :-(
>
>Take care,
>--
>Christian Robottom Reis | http://async.com.br/~kiko/ | [+55 16] 261 2331
>-
>To view or change your list settings, click here:
><http://bugzilla.org/cgi-bin/mj_wwwusr?user=suson@tuckerenergy.com>
>
>  
>




More information about the developers mailing list