<?php
//
class billing_item_form_apl
{
   var $NM_is_redirected = false;
   var $NM_non_ajax_info = false;
   var $NM_ajax_flag    = false;
   var $NM_ajax_opcao   = '';
   var $NM_ajax_retorno = '';
   var $NM_ajax_info    = array('result'         => '',
                                'param'          => array(),
                                'autoComp'       => '',
                                'rsSize'         => '',
                                'msgDisplay'     => '',
                                'errList'        => array(),
                                'fldList'        => array(),
                                'focus'          => '',
                                'navStatus'      => array(),
                                'navSummary'     => array(),
                                'navPage'        => array(),
                                'redir'          => array(),
                                'blockDisplay'   => array(),
                                'fieldDisplay'   => array(),
                                'fieldLabel'     => array(),
                                'readOnly'       => array(),
                                'btnVars'        => array(),
                                'ajaxAlert'      => '',
                                'ajaxMessage'    => '',
                                'ajaxJavascript' => array(),
                                'buttonDisplay'  => array(),
                                'calendarReload' => false,
                                'quickSearchRes' => false,
                                'displayMsg'     => false,
                                'displayMsgTxt'  => '',
                               );
   var $Nav_permite_ava = true;
   var $Nav_permite_ret = true;
   var $Apl_com_erro    = false;
   var $Ini;
   var $Erro;
   var $Db;
   var $invoice_;
   var $item_;
   var $date_;
   var $bcode_;
   var $lin_;
   var $sq_;
   var $style_;
   var $width_;
   var $color_;
   var $cust_order_;
   var $our_order_;
   var $price_;
   var $unit_;
   var $amount_;
   var $descrip_;
   var $dye_order_;
   var $dye_lot_;
   var $cases_;
   var $cost_;
   var $cost_yd_;
   var $gp_;
   var $gp_yd_;
   var $pc_;
   var $adate_;
   var $edate_;
   var $smit_;
   var $memo_;
   var $id2_;
   var $nm_data;
   var $nmgp_opcao;
   var $nmgp_opc_ant;
   var $sc_evento;
   var $nmgp_clone;
   var $nmgp_return_img = array();
   var $nmgp_dados_form = array();
   var $nmgp_dados_select = array();
   var $nm_location;
   var $nm_flag_iframe;
   var $nm_flag_saida_novo;
   var $nmgp_botoes = array();
   var $nmgp_url_saida;
   var $nmgp_form_show;
   var $nmgp_form_empty;
   var $nmgp_cmp_readonly = array();
   var $nmgp_cmp_hidden = array();
   var $sc_teve_incl = false;
   var $sc_teve_excl = false;
   var $sc_teve_alt  = false;
   var $sc_after_all_insert = false;
   var $sc_after_all_update = false;
   var $sc_max_reg = 10; 
   var $sc_max_reg_incl = 10; 
   var $form_vert_billing_item_form = array();
   var $form_paginacao = 'parcial';
   var $lig_edit_lookup      = false;
   var $lig_edit_lookup_call = false;
   var $lig_edit_lookup_cb   = '';
   var $lig_edit_lookup_row  = '';
   var $is_calendar_app = false;
   var $Embutida_call  = false;
   var $Embutida_ronly = false;
   var $Embutida_proc  = false;
   var $Embutida_form  = false;
   var $Grid_editavel  = false;
   var $url_webhelp = '';
   var $nm_todas_criticas;
   var $Campos_Mens_erro;
   var $nm_new_label = array();
//
//----- 
   function ini_controle()
   {
        global $nm_url_saida, $teste_validade, $script_case_init, 
               $GLOBALS, $Campos_Crit, $Campos_Falta, $Campos_Erros, $sc_seq_vert, $sc_check_incl, 
               $glo_senha_protect, $nm_apl_dependente, $nm_form_submit, $sc_check_excl, $nm_opc_form_php, $nm_call_php, $nm_opc_lookup;


      if ($this->NM_ajax_flag)
      {
          if (isset($this->NM_ajax_info['param']['adate_']))
          {
              $this->adate_ = $this->NM_ajax_info['param']['adate_'];
          }
          if (isset($this->NM_ajax_info['param']['amount_']))
          {
              $this->amount_ = $this->NM_ajax_info['param']['amount_'];
          }
          if (isset($this->NM_ajax_info['param']['bcode_']))
          {
              $this->bcode_ = $this->NM_ajax_info['param']['bcode_'];
          }
          if (isset($this->NM_ajax_info['param']['cases_']))
          {
              $this->cases_ = $this->NM_ajax_info['param']['cases_'];
          }
          if (isset($this->NM_ajax_info['param']['color_']))
          {
              $this->color_ = $this->NM_ajax_info['param']['color_'];
          }
          if (isset($this->NM_ajax_info['param']['cust_order_']))
          {
              $this->cust_order_ = $this->NM_ajax_info['param']['cust_order_'];
          }
          if (isset($this->NM_ajax_info['param']['date_']))
          {
              $this->date_ = $this->NM_ajax_info['param']['date_'];
          }
          if (isset($this->NM_ajax_info['param']['descrip_']))
          {
              $this->descrip_ = $this->NM_ajax_info['param']['descrip_'];
          }
          if (isset($this->NM_ajax_info['param']['dye_lot_']))
          {
              $this->dye_lot_ = $this->NM_ajax_info['param']['dye_lot_'];
          }
          if (isset($this->NM_ajax_info['param']['dye_order_']))
          {
              $this->dye_order_ = $this->NM_ajax_info['param']['dye_order_'];
          }
          if (isset($this->NM_ajax_info['param']['edate_']))
          {
              $this->edate_ = $this->NM_ajax_info['param']['edate_'];
          }
          if (isset($this->NM_ajax_info['param']['id2_']))
          {
              $this->id2_ = $this->NM_ajax_info['param']['id2_'];
          }
          if (isset($this->NM_ajax_info['param']['invoice_']))
          {
              $this->invoice_ = $this->NM_ajax_info['param']['invoice_'];
          }
          if (isset($this->NM_ajax_info['param']['item_']))
          {
              $this->item_ = $this->NM_ajax_info['param']['item_'];
          }
          if (isset($this->NM_ajax_info['param']['lin_']))
          {
              $this->lin_ = $this->NM_ajax_info['param']['lin_'];
          }
          if (isset($this->NM_ajax_info['param']['memo_']))
          {
              $this->memo_ = $this->NM_ajax_info['param']['memo_'];
          }
          if (isset($this->NM_ajax_info['param']['nm_form_submit']))
          {
              $this->nm_form_submit = $this->NM_ajax_info['param']['nm_form_submit'];
          }
          if (isset($this->NM_ajax_info['param']['nmgp_ancora']))
          {
              $this->nmgp_ancora = $this->NM_ajax_info['param']['nmgp_ancora'];
          }
          if (isset($this->NM_ajax_info['param']['nmgp_arg_fast_search']))
          {
              $this->nmgp_arg_fast_search = $this->NM_ajax_info['param']['nmgp_arg_fast_search'];
          }
          if (isset($this->NM_ajax_info['param']['nmgp_cond_fast_search']))
          {
              $this->nmgp_cond_fast_search = $this->NM_ajax_info['param']['nmgp_cond_fast_search'];
          }
          if (isset($this->NM_ajax_info['param']['nmgp_fast_search']))
          {
              $this->nmgp_fast_search = $this->NM_ajax_info['param']['nmgp_fast_search'];
          }
          if (isset($this->NM_ajax_info['param']['nmgp_num_form']))
          {
              $this->nmgp_num_form = $this->NM_ajax_info['param']['nmgp_num_form'];
          }
          if (isset($this->NM_ajax_info['param']['nmgp_opcao']))
          {
              $this->nmgp_opcao = $this->NM_ajax_info['param']['nmgp_opcao'];
          }
          if (isset($this->NM_ajax_info['param']['nmgp_ordem']))
          {
              $this->nmgp_ordem = $this->NM_ajax_info['param']['nmgp_ordem'];
          }
          if (isset($this->NM_ajax_info['param']['nmgp_parms']))
          {
              $this->nmgp_parms = $this->NM_ajax_info['param']['nmgp_parms'];
          }
          if (isset($this->NM_ajax_info['param']['nmgp_refresh_row']))
          {
              $this->nmgp_refresh_row = $this->NM_ajax_info['param']['nmgp_refresh_row'];
          }
          if (isset($this->NM_ajax_info['param']['nmgp_url_saida']))
          {
              $this->nmgp_url_saida = $this->NM_ajax_info['param']['nmgp_url_saida'];
          }
          if (isset($this->NM_ajax_info['param']['our_order_']))
          {
              $this->our_order_ = $this->NM_ajax_info['param']['our_order_'];
          }
          if (isset($this->NM_ajax_info['param']['price_']))
          {
              $this->price_ = $this->NM_ajax_info['param']['price_'];
          }
          if (isset($this->NM_ajax_info['param']['sc_clone']))
          {
              $this->sc_clone = $this->NM_ajax_info['param']['sc_clone'];
          }
          if (isset($this->NM_ajax_info['param']['sc_seq_clone']))
          {
              $this->sc_seq_clone = $this->NM_ajax_info['param']['sc_seq_clone'];
          }
          if (isset($this->NM_ajax_info['param']['sc_seq_vert']))
          {
              $this->sc_seq_vert = $this->NM_ajax_info['param']['sc_seq_vert'];
          }
          if (isset($this->NM_ajax_info['param']['script_case_init']))
          {
              $this->script_case_init = $this->NM_ajax_info['param']['script_case_init'];
          }
          if (isset($this->NM_ajax_info['param']['smit_']))
          {
              $this->smit_ = $this->NM_ajax_info['param']['smit_'];
          }
          if (isset($this->NM_ajax_info['param']['sq_']))
          {
              $this->sq_ = $this->NM_ajax_info['param']['sq_'];
          }
          if (isset($this->NM_ajax_info['param']['style_']))
          {
              $this->style_ = $this->NM_ajax_info['param']['style_'];
          }
          if (isset($this->NM_ajax_info['param']['unit_']))
          {
              $this->unit_ = $this->NM_ajax_info['param']['unit_'];
          }
          if (isset($this->NM_ajax_info['param']['width_']))
          {
              $this->width_ = $this->NM_ajax_info['param']['width_'];
          }
          if (isset($this->nmgp_refresh_fields))
          {
              $this->nmgp_refresh_fields = explode('_#fld#_', $this->nmgp_refresh_fields);
              $this->nmgp_opcao          = 'recarga';
          }
          if (!isset($this->nmgp_refresh_row))
          {
              $this->nmgp_refresh_row = '';
          }
      }

      $this->sc_conv_var = array();
      $this->sc_conv_var['invoice'] = "invoice_";
      $this->sc_conv_var['item'] = "item_";
      $this->sc_conv_var['date'] = "date_";
      $this->sc_conv_var['bcode'] = "bcode_";
      $this->sc_conv_var['lin'] = "lin_";
      $this->sc_conv_var['sq'] = "sq_";
      $this->sc_conv_var['style'] = "style_";
      $this->sc_conv_var['width'] = "width_";
      $this->sc_conv_var['color'] = "color_";
      $this->sc_conv_var['cust_order'] = "cust_order_";
      $this->sc_conv_var['our_order'] = "our_order_";
      $this->sc_conv_var['price'] = "price_";
      $this->sc_conv_var['unit'] = "unit_";
      $this->sc_conv_var['amount'] = "amount_";
      $this->sc_conv_var['descrip'] = "descrip_";
      $this->sc_conv_var['dye_order'] = "dye_order_";
      $this->sc_conv_var['dye_lot'] = "dye_lot_";
      $this->sc_conv_var['cases'] = "cases_";
      $this->sc_conv_var['cost'] = "cost_";
      $this->sc_conv_var['cost_yd'] = "cost_yd_";
      $this->sc_conv_var['gp'] = "gp_";
      $this->sc_conv_var['gp_yd'] = "gp_yd_";
      $this->sc_conv_var['pc'] = "pc_";
      $this->sc_conv_var['adate'] = "adate_";
      $this->sc_conv_var['edate'] = "edate_";
      $this->sc_conv_var['smit'] = "smit_";
      $this->sc_conv_var['memo'] = "memo_";
      $this->sc_conv_var['id2'] = "id2_";
      if (!empty($_FILES))
      {
          foreach ($_FILES as $nmgp_campo => $nmgp_valores)
          {
               if (isset($this->sc_conv_var[$nmgp_campo]))
               {
                   $nmgp_campo = $this->sc_conv_var[$nmgp_campo];
               }
               elseif (isset($this->sc_conv_var[strtolower($nmgp_campo)]))
               {
                   $nmgp_campo = $this->sc_conv_var[strtolower($nmgp_campo)];
               }
               $tmp_scfile_name     = $nmgp_campo . "_scfile_name";
               $tmp_scfile_type     = $nmgp_campo . "_scfile_type";
               $this->$nmgp_campo = is_array($nmgp_valores['tmp_name']) ? $nmgp_valores['tmp_name'][0] : $nmgp_valores['tmp_name'];
               $this->$tmp_scfile_type   = is_array($nmgp_valores['type'])     ? $nmgp_valores['type'][0]     : $nmgp_valores['type'];
               $this->$tmp_scfile_name   = is_array($nmgp_valores['name'])     ? $nmgp_valores['name'][0]     : $nmgp_valores['name'];
          }
      }
      if (!empty($_POST))
      {
          foreach ($_POST as $nmgp_var => $nmgp_val)
          {
               if (isset($this->sc_conv_var[$nmgp_var]))
               {
                   $nmgp_var = $this->sc_conv_var[$nmgp_var];
               }
               elseif (isset($this->sc_conv_var[strtolower($nmgp_var)]))
               {
                   $nmgp_var = $this->sc_conv_var[strtolower($nmgp_var)];
               }
               $this->$nmgp_var = $nmgp_val;
          }
      }
      if (!empty($_GET))
      {
          foreach ($_GET as $nmgp_var => $nmgp_val)
          {
               if (isset($this->sc_conv_var[$nmgp_var]))
               {
                   $nmgp_var = $this->sc_conv_var[$nmgp_var];
               }
               elseif (isset($this->sc_conv_var[strtolower($nmgp_var)]))
               {
                   $nmgp_var = $this->sc_conv_var[strtolower($nmgp_var)];
               }
               $this->$nmgp_var = $nmgp_val;
          }
      }
      if (isset($_SESSION['sc_session'][$script_case_init]['billing_item_form']['embutida_parms']))
      { 
          $this->nmgp_parms = $_SESSION['sc_session'][$script_case_init]['billing_item_form']['embutida_parms'];
          unset($_SESSION['sc_session'][$script_case_init]['billing_item_form']['embutida_parms']);
      } 
      if (isset($this->nmgp_parms) && !empty($this->nmgp_parms)) 
      { 
          if (isset($_SESSION['nm_aba_bg_color'])) 
          { 
              unset($_SESSION['nm_aba_bg_color']);
          }   
          $this->NM_where_filter = "";
          $tem_where_parms       = false;
          $nmgp_parms = NM_decode_input($nmgp_parms);
          $nmgp_parms = str_replace("@aspass@", "'", $this->nmgp_parms);
          $nmgp_parms = str_replace("*scout", "?@?", $nmgp_parms);
          $nmgp_parms = str_replace("*scin", "?#?", $nmgp_parms);
          $todo = explode("?@?", $nmgp_parms);
          $ix = 0;
          while (!empty($todo[$ix]))
          {
             $cadapar = explode("?#?", $todo[$ix]);
             if (1 < sizeof($cadapar))
             {
                 if (isset($this->sc_conv_var[$cadapar[0]]))
                 {
                     $cadapar[0] = $this->sc_conv_var[$cadapar[0]];
                 }
                 elseif (isset($this->sc_conv_var[strtolower($cadapar[0])]))
                 {
                     $cadapar[0] = $this->sc_conv_var[strtolower($cadapar[0])];
                 }
                 nm_limpa_str_billing_item_form($cadapar[1]);
                 $this->$cadapar[0] = $cadapar[1];
                 if ($cadapar[0] == "INVOICE_")
                 {
                     $this->NM_where_filter .= (empty($this->NM_where_filter)) ? "(" : " and ";
                     $this->NM_where_filter .= " = '" . $this->INVOICE_ . "'";
                     $tem_where_parms        = true;
                 }
                 if ($cadapar[0] == "NM_where_filter")
                 {
                     $tem_where_parms = false;
                 }
                 if ($cadapar[0] == "ID2_")
                 {
                     $this->NM_where_filter .= (empty($this->NM_where_filter)) ? "(" : " and ";
                     $this->NM_where_filter .= " = '" . $this->ID2_ . "'";
                     $tem_where_parms        = true;
                 }
                 if ($cadapar[0] == "NM_where_filter")
                 {
                     $tem_where_parms = false;
                 }
             }
             $ix++;
          }
          if ($tem_where_parms)
          {
              $this->NM_where_filter .= ")";
          }
          else
          {
              unset($this->NM_where_filter);
          }
          if (isset($this->NM_where_filter_form))
          {
              $_SESSION['sc_session'][$script_case_init]['billing_item_form']['where_filter_form'] = $this->NM_where_filter_form;
             unset($_SESSION['sc_session'][$script_case_init]['billing_item_form']['total']);
          }
          if (isset($this->sc_redir_atualiz))
          {
              $_SESSION['sc_session'][$script_case_init]['billing_item_form']['sc_redir_atualiz'] = $this->sc_redir_atualiz;
          }
          if (isset($this->sc_redir_insert))
          {
              $_SESSION['sc_session'][$script_case_init]['billing_item_form']['sc_redir_insert'] = $this->sc_redir_insert;
          }
      } 
      elseif (isset($script_case_init) && !empty($script_case_init) && isset($_SESSION['sc_session'][$script_case_init]['billing_item_form']['parms']))
      {
          if ((!isset($this->nmgp_opcao) || ($this->nmgp_opcao != "incluir" && $this->nmgp_opcao != "alterar" && $this->nmgp_opcao != "excluir" && $this->nmgp_opcao != "novo" && $this->nmgp_opcao != "recarga" && $this->nmgp_opcao != "muda_form")) && (!isset($this->NM_ajax_opcao) || $this->NM_ajax_opcao == ""))
          {
              $todo = explode("?@?", $_SESSION['sc_session'][$script_case_init]['billing_item_form']['parms']);
              $ix = 0;
              while (!empty($todo[$ix]))
              {
                 $cadapar = explode("?#?", $todo[$ix]);
                 $this->$cadapar[0] = $cadapar[1];
                 $ix++;
              }
          }
      } 

      if (!$this->NM_ajax_flag && 'autocomp_' == substr($this->NM_ajax_opcao, 0, 9))
      {
          $this->NM_ajax_flag = true;
      }

      $dir_raiz          = strrpos($_SERVER['PHP_SELF'],"/") ;  
      $dir_raiz          = substr($_SERVER['PHP_SELF'], 0, $dir_raiz + 1) ;  
      if (isset($this->nm_evt_ret_edit) && '' != $this->nm_evt_ret_edit)
      {
          $_SESSION['sc_session'][$script_case_init]['billing_item_form']['lig_edit_lookup']     = true;
          $_SESSION['sc_session'][$script_case_init]['billing_item_form']['lig_edit_lookup_cb']  = $this->nm_evt_ret_edit;
          $_SESSION['sc_session'][$script_case_init]['billing_item_form']['lig_edit_lookup_row'] = isset($this->nm_evt_ret_row) ? $this->nm_evt_ret_row : '';
      }
      if (isset($_SESSION['sc_session'][$script_case_init]['billing_item_form']['lig_edit_lookup']) && $_SESSION['sc_session'][$script_case_init]['billing_item_form']['lig_edit_lookup'])
      {
          $this->lig_edit_lookup     = true;
          $this->lig_edit_lookup_cb  = $_SESSION['sc_session'][$script_case_init]['billing_item_form']['lig_edit_lookup_cb'];
          $this->lig_edit_lookup_row = $_SESSION['sc_session'][$script_case_init]['billing_item_form']['lig_edit_lookup_row'];
      }
      if (!$this->Ini)
      { 
          $this->Ini = new billing_item_form_ini(); 
          $this->Ini->init();
      } 
      if (!function_exists("nmButtonOutput"))
      {
          include_once($this->Ini->path_lib_php . "nm_gp_config_btn.php");
      }
      include("../_lib/css/" . $this->Ini->str_schema_all . "_form.php");
      $this->Ini->Str_btn_form    = trim($str_button);
      include($this->Ini->path_btn . $this->Ini->Str_btn_form . '/' . $this->Ini->Str_btn_form . '.php');
      $this->Db = $this->Ini->Db; 
      $this->Ini->Img_sep_form    = "/" . trim($str_toolbar_separator);
      $this->Ini->Color_bg_ajax   = "" == trim($str_ajax_bg)         ? "#000" : $str_ajax_bg;
      $this->Ini->Border_c_ajax   = "" == trim($str_ajax_border_c)   ? ""     : $str_ajax_border_c;
      $this->Ini->Border_s_ajax   = "" == trim($str_ajax_border_s)   ? ""     : $str_ajax_border_s;
      $this->Ini->Border_w_ajax   = "" == trim($str_ajax_border_w)   ? ""     : $str_ajax_border_w;
      $this->Ini->Block_img_exp   = "" == trim($str_block_exp)       ? ""     : $str_block_exp;
      $this->Ini->Block_img_col   = "" == trim($str_block_col)       ? ""     : $str_block_col;
      $this->Ini->Msg_ico_title   = "" == trim($str_msg_ico_title)   ? ""     : $str_msg_ico_title;
      $this->Ini->Msg_ico_body    = "" == trim($str_msg_ico_body)    ? ""     : $str_msg_ico_body;
      $this->Ini->Err_ico_title   = "" == trim($str_err_ico_title)   ? ""     : $str_err_ico_title;
      $this->Ini->Err_ico_body    = "" == trim($str_err_ico_body)    ? ""     : $str_err_ico_body;
      $this->Ini->Cal_ico_back    = "" == trim($str_cal_ico_back)    ? ""     : $str_cal_ico_back;
      $this->Ini->Cal_ico_for     = "" == trim($str_cal_ico_for)     ? ""     : $str_cal_ico_for;
      $this->Ini->Cal_ico_close   = "" == trim($str_cal_ico_close)   ? ""     : $str_cal_ico_close;
      $this->Ini->Tab_space       = "" == trim($str_tab_space)       ? ""     : $str_tab_space;
      $this->Ini->Bubble_tail     = "" == trim($str_bubble_tail)     ? ""     : $str_bubble_tail;
      $this->Ini->Label_sort_pos  = "" == trim($str_label_sort_pos)  ? ""     : $str_label_sort_pos;
      $this->Ini->Label_sort      = "" == trim($str_label_sort)      ? ""     : $str_label_sort;
      $this->Ini->Label_sort_asc  = "" == trim($str_label_sort_asc)  ? ""     : $str_label_sort_asc;
      $this->Ini->Label_sort_desc = "" == trim($str_label_sort_desc) ? ""     : $str_label_sort_desc;
      $this->Ini->Img_status_ok   = "" == trim($str_img_status_ok_mult)   ? ""     : $str_img_status_ok_mult;
      $this->Ini->Img_status_err  = "" == trim($str_img_status_err_mult)  ? ""     : $str_img_status_err_mult;
      $this->Ini->Css_status      = "scFormInputErrorMult";
      $this->Ini->Error_icon_span = "" == trim($str_error_icon_span) ? false  : "message" == $str_error_icon_span;
      $this->Ini->Img_qs_search        = "" == trim($img_qs_search)        ? "scriptcase__NM__qs_lupa.png"  : $img_qs_search;
      $this->Ini->Img_qs_clean         = "" == trim($img_qs_clean)         ? "scriptcase__NM__qs_close.png" : $img_qs_clean;
      $this->Ini->Str_qs_image_padding = "" == trim($str_qs_image_padding) ? "0"                            : $str_qs_image_padding;


      $this->arr_buttons['sc_btn_0']['hint']             = "";
      $this->arr_buttons['sc_btn_0']['type']             = "button";
      $this->arr_buttons['sc_btn_0']['value']            = "Generate Primary Key";
      $this->arr_buttons['sc_btn_0']['display']          = "only_text";
      $this->arr_buttons['sc_btn_0']['display_position'] = "text_right";
      $this->arr_buttons['sc_btn_0']['style']            = "default";
      $this->arr_buttons['sc_btn_0']['image']            = "";


      $_SESSION['scriptcase']['error_icon']['billing_item_form']  = "<img src=\"" . $this->Ini->path_icones . "/scriptcase__NM__icnMensagemAlerta.png\" style=\"border-width: 0px\" align=\"top\">&nbsp;";
      $_SESSION['scriptcase']['error_close']['billing_item_form'] = "<td>" . nmButtonOutput($this->arr_buttons, "berrm_clse", "document.getElementById('id_error_display_fixed').style.display = 'none'; document.getElementById('id_error_message_fixed').innerHTML = ''; return false", "document.getElementById('id_error_display_fixed').style.display = 'none'; document.getElementById('id_error_message_fixed').innerHTML = ''; return false", "", "", "", "", "", "", "", $this->Ini->path_botoes, "", "", "", "") . "</td>";

      $this->Embutida_proc = isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_proc']) ? $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_proc'] : $this->Embutida_proc;
      $this->Embutida_form = isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_form']) ? $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_form'] : $this->Embutida_form;
      $this->Embutida_call = isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_call']) ? $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_call'] : $this->Embutida_call;

      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_grid_edit']) && '' != $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_grid_edit'])
      {
          $this->Grid_editavel = ('on' == $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_grid_edit']) ? true : false;
      }
      if (isset($this->Grid_editavel) && $this->Grid_editavel)
      {
          $this->Embutida_form  = true;
          $this->Embutida_ronly = true;
      }
      $this->Embutida_multi = false;
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_multi']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_multi'])
      {
          $this->Grid_editavel  = false;
          $this->Embutida_form  = false;
          $this->Embutida_ronly = false;
          $this->Embutida_multi = true;
      }
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_tp_pag']) && '' != $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_tp_pag'])
      {
          $this->form_paginacao = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_tp_pag'];
      }

      if (!isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_form']) || '' == $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_form'])
      {
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_form'] = $this->Embutida_form;
      }
      if (!isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_grid_edit']) || '' == $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_grid_edit'])
      {
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_grid_edit'] = $this->Grid_editavel ? 'on' : 'off';
      }
      if (!isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_grid_edit']) || '' == $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_grid_edit'])
      {
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_grid_edit'] = $this->Embutida_call;
      }

      $this->nm_location = $this->Ini->sc_protocolo . $this->Ini->server . $dir_raiz; 
      $this->nmgp_url_saida  = $nm_url_saida;
      $this->nmgp_form_show  = "on";
      $this->nmgp_form_empty = false;
      $this->Ini->sc_Include($this->Ini->path_lib_php . "/nm_valida.php", "C", "NM_Valida") ; 
      $teste_validade = new NM_Valida ;

      $this->loadFieldConfig();

      if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['first_time'])
      {
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['insert']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['new']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['update']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['delete']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['first']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['back']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['forward']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['last']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['qsearch']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['summary']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['navpage']);
          unset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['goto']);
      }
      if (isset($this->NM_btn_insert) && '' != $this->NM_btn_insert && (!isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['insert']) || '' == $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['insert']))
      {
          if ('N' == $this->NM_btn_insert)
          {
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['insert'] = 'off';
          }
          else
          {
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['insert'] = 'on';
          }
      }
      if (isset($this->NM_btn_new) && 'N' == $this->NM_btn_new)
      {
          $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['new'] = 'off';
      }
      if (isset($this->NM_btn_update) && '' != $this->NM_btn_update && (!isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['update']) || '' == $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['update']))
      {
          if ('N' == $this->NM_btn_update)
          {
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['update'] = 'off';
          }
          else
          {
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['update'] = 'on';
          }
      }
      if (isset($this->NM_btn_delete) && '' != $this->NM_btn_delete && (!isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['delete']) || '' == $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['delete']))
      {
          if ('N' == $this->NM_btn_delete)
          {
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['delete'] = 'off';
          }
          else
          {
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['delete'] = 'on';
          }
      }
      if (isset($this->NM_btn_navega) && '' != $this->NM_btn_navega)
      {
          if ('N' == $this->NM_btn_navega)
          {
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['first']   = 'off';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['back']    = 'off';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['forward'] = 'off';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['last']    = 'off';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['qsearch'] = 'off';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['summary'] = 'off';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['navpage'] = 'off';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['goto']    = 'off';
          }
          else
          {
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['first']   = 'on';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['back']    = 'on';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['forward'] = 'on';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['last']    = 'on';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['qsearch'] = 'on';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['summary'] = 'on';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['navpage'] = 'on';
              $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['goto']    = 'on';
          }
      }

      $this->nmgp_botoes['exit'] = "on";
      $this->nmgp_botoes['qsearch'] = "on";
      $this->nmgp_botoes['new'] = "on";
      $this->nmgp_botoes['insert'] = "on";
      $this->nmgp_botoes['copy'] = "off";
      $this->nmgp_botoes['update'] = "on";
      $this->nmgp_botoes['delete'] = "on";
      if ('total' == $this->form_paginacao)
      {
          $this->nmgp_botoes['first']   = "off";
          $this->nmgp_botoes['back']    = "off";
          $this->nmgp_botoes['forward'] = "off";
          $this->nmgp_botoes['last']    = "off";
          $this->nmgp_botoes['navpage'] = "off";
          $this->nmgp_botoes['goto']    = "off";
          $this->nmgp_botoes['qtline']  = "off";
      }
      else
      {
      $this->nmgp_botoes['first'] = "on";
      $this->nmgp_botoes['back'] = "on";
      $this->nmgp_botoes['forward'] = "on";
      $this->nmgp_botoes['last'] = "on";
      $this->nmgp_botoes['summary'] = "on";
      $this->nmgp_botoes['navpage'] = "on";
      $this->nmgp_botoes['goto'] = "on";
      $this->nmgp_botoes['qtline'] = "on";
      }
      $this->nmgp_botoes['sc_btn_0'] = "on";
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['iframe_filtro']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['iframe_filtro'] == "S")
      {
          $this->nmgp_botoes['exit'] = "off";
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['btn_display']) && !empty($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['btn_display']))
      {
          foreach ($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['btn_display'] as $NM_cada_btn => $NM_cada_opc)
          {
              $this->nmgp_botoes[$NM_cada_btn] = $NM_cada_opc;
          }
      }

      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['insert']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['insert'] != '')
      {
          $this->nmgp_botoes['new']    = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['insert'];
          $this->nmgp_botoes['insert'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['insert'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['new']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['new'] != '')
      {
          $this->nmgp_botoes['new']    = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['new'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['update']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['update'] != '')
      {
          $this->nmgp_botoes['update'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['update'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['delete']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['delete'] != '')
      {
          $this->nmgp_botoes['delete'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['delete'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['first']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['first'] != '')
      {
          $this->nmgp_botoes['first'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['first'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['back']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['back'] != '')
      {
          $this->nmgp_botoes['back'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['back'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['forward']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['forward'] != '')
      {
          $this->nmgp_botoes['forward'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['forward'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['last']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['last'] != '')
      {
          $this->nmgp_botoes['last'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['last'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['qsearch']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['qsearch'] != '')
      {
          $this->nmgp_botoes['qsearch'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['qsearch'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['summary']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['summary'] != '')
      {
          $this->nmgp_botoes['summary'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['summary'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['navpage']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['navpage'] != '')
      {
          $this->nmgp_botoes['navpage'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['navpage'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['goto']) && $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['goto'] != '')
      {
          $this->nmgp_botoes['goto'] = $_SESSION['scriptcase']['sc_apl_conf_lig']['billing_item_form']['goto'];
      }

      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_insert']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_insert'] != '')
      {
          $this->nmgp_botoes['new']    = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_insert'];
          $this->nmgp_botoes['insert'] = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_insert'];
      }
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_update']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_update'] != '')
      {
          $this->nmgp_botoes['update'] = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_update'];
      }
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_delete']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_delete'] != '')
      {
          $this->nmgp_botoes['delete'] = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_delete'];
      }
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_btn_nav']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_btn_nav'] != '')
      {
          $this->nmgp_botoes['first']   = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_btn_nav'];
          $this->nmgp_botoes['back']    = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_btn_nav'];
          $this->nmgp_botoes['forward'] = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_btn_nav'];
          $this->nmgp_botoes['last']    = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_form_btn_nav'];
      }

      if (isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['insert']) && $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['insert'] != '')
      {
          $this->nmgp_botoes['new']    = $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['insert'];
          $this->nmgp_botoes['insert'] = $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['insert'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['update']) && $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['update'] != '')
      {
          $this->nmgp_botoes['update'] = $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['update'];
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['delete']) && $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['delete'] != '')
      {
          $this->nmgp_botoes['delete'] = $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['delete'];
      }

      if (isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['field_display']) && !empty($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['field_display']))
      {
          foreach ($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['field_display'] as $NM_cada_field => $NM_cada_opc)
          {
              $this->nmgp_cmp_hidden[$NM_cada_field . "_"] = $NM_cada_opc;
              $this->NM_ajax_info['fieldDisplay'][$NM_cada_field . "_"] = $NM_cada_opc;
          }
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['field_readonly']) && !empty($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['field_readonly']))
      {
          foreach ($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['field_readonly'] as $NM_cada_field => $NM_cada_opc)
          {
              $this->nmgp_cmp_readonly[$NM_cada_field . "_"] = "on";
              $this->NM_ajax_info['readOnly'][$NM_cada_field . "_"] = $NM_cada_opc;
          }
      }
      if (isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['exit']) && $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['exit'] != '')
      {
          $_SESSION['scriptcase']['sc_url_saida'][$this->Ini->sc_page] = $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['exit'];
      }
      $glo_senha_protect = (isset($_SESSION['scriptcase']['glo_senha_protect'])) ? $_SESSION['scriptcase']['glo_senha_protect'] : "S";
      $this->aba_iframe = false;
      if (isset($_SESSION['scriptcase']['sc_aba_iframe']))
      {
          foreach ($_SESSION['scriptcase']['sc_aba_iframe'] as $aba => $apls_aba)
          {
              if (in_array("billing_item_form", $apls_aba))
              {
                  $this->aba_iframe = true;
                  break;
              }
          }
      }
      if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['iframe_menu'] && (!isset($_SESSION['scriptcase']['menu_mobile']) || empty($_SESSION['scriptcase']['menu_mobile'])))
      {
          $this->aba_iframe = true;
      }
      $this->Ini->sc_Include($this->Ini->path_lib_php . "/nm_gp_limpa.php", "F", "nm_limpa_valor") ; 
      $this->Ini->sc_Include($this->Ini->path_libs . "/nm_gc.php", "F", "nm_gc") ; 
      $_SESSION['scriptcase']['sc_tab_meses']['int'] = array(
                                      $this->Ini->Nm_lang['lang_mnth_janu'],
                                      $this->Ini->Nm_lang['lang_mnth_febr'],
                                      $this->Ini->Nm_lang['lang_mnth_marc'],
                                      $this->Ini->Nm_lang['lang_mnth_apri'],
                                      $this->Ini->Nm_lang['lang_mnth_mayy'],
                                      $this->Ini->Nm_lang['lang_mnth_june'],
                                      $this->Ini->Nm_lang['lang_mnth_july'],
                                      $this->Ini->Nm_lang['lang_mnth_augu'],
                                      $this->Ini->Nm_lang['lang_mnth_sept'],
                                      $this->Ini->Nm_lang['lang_mnth_octo'],
                                      $this->Ini->Nm_lang['lang_mnth_nove'],
                                      $this->Ini->Nm_lang['lang_mnth_dece']);
      $_SESSION['scriptcase']['sc_tab_meses']['abr'] = array(
                                      $this->Ini->Nm_lang['lang_shrt_mnth_janu'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_febr'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_marc'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_apri'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_mayy'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_june'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_july'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_augu'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_sept'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_octo'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_nove'],
                                      $this->Ini->Nm_lang['lang_shrt_mnth_dece']);
      $_SESSION['scriptcase']['sc_tab_dias']['int'] = array(
                                      $this->Ini->Nm_lang['lang_days_sund'],
                                      $this->Ini->Nm_lang['lang_days_mond'],
                                      $this->Ini->Nm_lang['lang_days_tued'],
                                      $this->Ini->Nm_lang['lang_days_wend'],
                                      $this->Ini->Nm_lang['lang_days_thud'],
                                      $this->Ini->Nm_lang['lang_days_frid'],
                                      $this->Ini->Nm_lang['lang_days_satd']);
      $_SESSION['scriptcase']['sc_tab_dias']['abr'] = array(
                                      $this->Ini->Nm_lang['lang_shrt_days_sund'],
                                      $this->Ini->Nm_lang['lang_shrt_days_mond'],
                                      $this->Ini->Nm_lang['lang_shrt_days_tued'],
                                      $this->Ini->Nm_lang['lang_shrt_days_wend'],
                                      $this->Ini->Nm_lang['lang_shrt_days_thud'],
                                      $this->Ini->Nm_lang['lang_shrt_days_frid'],
                                      $this->Ini->Nm_lang['lang_shrt_days_satd']);
      nm_gc($this->Ini->path_libs);
      $this->Ini->Gd_missing  = true;
      if(function_exists("getProdVersion"))
      {
         $_SESSION['scriptcase']['sc_prod_Version'] = str_replace(".", "", getProdVersion($this->Ini->path_libs));
         if(function_exists("gd_info"))
         {
            $this->Ini->Gd_missing = false;
         }
      }
      $this->Ini->sc_Include($this->Ini->path_lib_php . "/nm_trata_img.php", "C", "nm_trata_img") ; 
      $this->nm_data = new nm_data("en_us");
      if (isset($_GET['nm_cal_display']))
      {
          if ($this->Embutida_proc)
          { 
              include_once($this->Ini->path_embutida . 'billing_item_form/billing_item_form_calendar.php');
          }
          else
          { 
              include_once($this->Ini->path_aplicacao . 'billing_item_form_calendar.php');
          }
          exit;
      }

      if (is_file($this->Ini->path_aplicacao . 'billing_item_form_help.txt'))
      {
          $arr_link_webhelp = file($this->Ini->path_aplicacao . 'billing_item_form_help.txt');
          if ($arr_link_webhelp)
          {
              foreach ($arr_link_webhelp as $str_link_webhelp)
              {
                  $str_link_webhelp = trim($str_link_webhelp);
                  if ('form:' == substr($str_link_webhelp, 0, 5))
                  {
                      $arr_link_parts = explode(':', $str_link_webhelp);
                      if ('' != $arr_link_parts[1] && is_file($this->Ini->root . $this->Ini->path_help . $arr_link_parts[1]))
                      {
                          $this->url_webhelp = $this->Ini->path_help . $arr_link_parts[1];
                      }
                  }
              }
          }
      }

      if (is_dir($this->Ini->path_aplicacao . 'img'))
      {
          $Res_dir_img = @opendir($this->Ini->path_aplicacao . 'img');
          if ($Res_dir_img)
          {
              while (FALSE !== ($Str_arquivo = @readdir($Res_dir_img))) 
              {
                 if (@is_file($this->Ini->path_aplicacao . 'img/' . $Str_arquivo) && '.' != $Str_arquivo && '..' != $this->Ini->path_aplicacao . 'img/' . $Str_arquivo)
                 {
                     @unlink($this->Ini->path_aplicacao . 'img/' . $Str_arquivo);
                 }
              }
          }
          @closedir($Res_dir_img);
          rmdir($this->Ini->path_aplicacao . 'img');
      }

      if ($this->Embutida_proc)
      { 
          require_once($this->Ini->path_embutida . 'billing_item_form/billing_item_form_erro.class.php');
      }
      else
      { 
          require_once($this->Ini->path_aplicacao . "billing_item_form_erro.class.php"); 
      }
      $this->Erro      = new billing_item_form_erro();
      $this->Erro->Ini = $this->Ini;
      $this->proc_fast_search = false;
      if ($this->nmgp_opcao == "fast_search")  
      {
          $this->SC_fast_search($this->nmgp_fast_search, $this->nmgp_cond_fast_search, $this->nmgp_arg_fast_search);
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opcao'] = "inicio";
          $this->nmgp_opcao = "inicio";
          $this->proc_fast_search = true;
      } 
      if ($nm_opc_lookup != "lookup" && $nm_opc_php != "formphp")
      { 
         if (empty($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opcao']))
         { 
             if ($this->invoice_ != "" || $this->id2_ != "")   
             { 
                 $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opcao'] = "igual" ;  
             }   
         }   
      } 
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opcao']) && !empty($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opcao']) && empty($this->nmgp_refresh_fields))
      {
          $this->nmgp_opcao = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opcao'];  
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opcao'] = "" ;  
          if ($this->nmgp_opcao == "edit_novo")  
          {
             $this->nmgp_opcao = "novo";
             $this->nm_flag_saida_novo = "S";
          }
      } 
      $this->nm_Start_new = false;
      if (isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['start']) && $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['start'] == 'new')
      {
          $this->nmgp_opcao = "novo";
          $this->nm_Start_new = true;
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opcao'] = "novo";
          unset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['start']);
      }
      if ($this->nmgp_opcao == "igual")  
      {
          $this->nmgp_opc_ant = $this->nmgp_opcao;
      } 
      else
      {
          $this->nmgp_opc_ant = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opc_ant'];
      } 
      if ($this->nmgp_opcao == "novo")  
      {
          $this->nmgp_botoes['sc_btn_0'] = "off";
      }
      elseif ($this->nmgp_opcao == "incluir")  
      {
          $this->nmgp_botoes['sc_btn_0'] = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['botoes']['sc_btn_0'];
      }
      if ($this->nmgp_opcao == "recarga" || $this->nmgp_opcao == "muda_form")  
      {
          $this->nmgp_botoes = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['botoes'];
          $this->Nav_permite_ret = 0 != $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['inicio'];
          $this->Nav_permite_ava = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['total'] != $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['final'];
      }
      else
      {
      }
      $this->nm_flag_iframe = false;
      if ($this->nmgp_opcao == "edit_novo")  
      {
          $this->nmgp_opcao = "novo";
          $this->nm_flag_saida_novo = "S";
      }
//
      $this->sc_evento = $this->nmgp_opcao;
      if ($nm_opc_form_php == "formphp")
      { 
          if ($nm_call_php == "sc_btn_0")
          { 
              $this->sc_btn_sc_btn_0();
          } 
          $this->NM_close_db(); 
          exit;
      } 
   }

   function loadFieldConfig()
   {
      $this->field_config = array();
      //-- id2_
      $this->field_config['id2_']               = array();
      $this->field_config['id2_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_num'];
      $this->field_config['id2_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['num_group_digit'];
      $this->field_config['id2_']['symbol_dec'] = '';
      $this->field_config['id2_']['symbol_neg'] = $_SESSION['scriptcase']['reg_conf']['simb_neg'];
      $this->field_config['id2_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['neg_num'];
      //-- date_
      $this->field_config['date_']                 = array();
      $this->field_config['date_']['date_format']  = $_SESSION['scriptcase']['reg_conf']['date_format'];
      $this->field_config['date_']['date_sep']     = $_SESSION['scriptcase']['reg_conf']['date_sep'];
      $this->field_config['date_']['date_display'] = "ddmmaaaa";
      $this->new_date_format('DT', 'date_');
      //-- item_
      $this->field_config['item_']               = array();
      $this->field_config['item_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_num'];
      $this->field_config['item_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['num_group_digit'];
      $this->field_config['item_']['symbol_dec'] = '';
      $this->field_config['item_']['symbol_neg'] = $_SESSION['scriptcase']['reg_conf']['simb_neg'];
      $this->field_config['item_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['neg_num'];
      //-- lin_
      $this->field_config['lin_']               = array();
      $this->field_config['lin_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_num'];
      $this->field_config['lin_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['num_group_digit'];
      $this->field_config['lin_']['symbol_dec'] = $_SESSION['scriptcase']['reg_conf']['dec_num'];
      $this->field_config['lin_']['symbol_neg'] = $_SESSION['scriptcase']['reg_conf']['simb_neg'];
      $this->field_config['lin_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['neg_num'];
      //-- sq_
      $this->field_config['sq_']               = array();
      $this->field_config['sq_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_num'];
      $this->field_config['sq_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['num_group_digit'];
      $this->field_config['sq_']['symbol_dec'] = $_SESSION['scriptcase']['reg_conf']['dec_num'];
      $this->field_config['sq_']['symbol_neg'] = $_SESSION['scriptcase']['reg_conf']['simb_neg'];
      $this->field_config['sq_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['neg_num'];
      //-- price_
      $this->field_config['price_']               = array();
      $this->field_config['price_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_num'];
      $this->field_config['price_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['num_group_digit'];
      $this->field_config['price_']['symbol_dec'] = $_SESSION['scriptcase']['reg_conf']['dec_num'];
      $this->field_config['price_']['symbol_neg'] = $_SESSION['scriptcase']['reg_conf']['simb_neg'];
      $this->field_config['price_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['neg_num'];
      //-- amount_
      $this->field_config['amount_']               = array();
      $this->field_config['amount_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_val'];
      $this->field_config['amount_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['unid_mont_group_digit'];
      $this->field_config['amount_']['symbol_dec'] = $_SESSION['scriptcase']['reg_conf']['dec_val'];
      $this->field_config['amount_']['symbol_mon'] = '';
      $this->field_config['amount_']['format_pos'] = $_SESSION['scriptcase']['reg_conf']['monet_f_pos'];
      $this->field_config['amount_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['monet_f_neg'];
      //-- adate_
      $this->field_config['adate_']                 = array();
      $this->field_config['adate_']['date_format']  = $_SESSION['scriptcase']['reg_conf']['date_format'];
      $this->field_config['adate_']['date_sep']     = $_SESSION['scriptcase']['reg_conf']['date_sep'];
      $this->field_config['adate_']['date_display'] = "ddmmaaaa";
      $this->new_date_format('DT', 'adate_');
      //-- edate_
      $this->field_config['edate_']                 = array();
      $this->field_config['edate_']['date_format']  = $_SESSION['scriptcase']['reg_conf']['date_format'];
      $this->field_config['edate_']['date_sep']     = $_SESSION['scriptcase']['reg_conf']['date_sep'];
      $this->field_config['edate_']['date_display'] = "ddmmaaaa";
      $this->new_date_format('DT', 'edate_');
      //-- cost_
      $this->field_config['cost_']               = array();
      $this->field_config['cost_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_val'];
      $this->field_config['cost_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['unid_mont_group_digit'];
      $this->field_config['cost_']['symbol_dec'] = $_SESSION['scriptcase']['reg_conf']['dec_val'];
      $this->field_config['cost_']['symbol_mon'] = '';
      $this->field_config['cost_']['format_pos'] = $_SESSION['scriptcase']['reg_conf']['monet_f_pos'];
      $this->field_config['cost_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['monet_f_neg'];
      //-- cost_yd_
      $this->field_config['cost_yd_']               = array();
      $this->field_config['cost_yd_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_num'];
      $this->field_config['cost_yd_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['num_group_digit'];
      $this->field_config['cost_yd_']['symbol_dec'] = $_SESSION['scriptcase']['reg_conf']['dec_num'];
      $this->field_config['cost_yd_']['symbol_neg'] = $_SESSION['scriptcase']['reg_conf']['simb_neg'];
      $this->field_config['cost_yd_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['neg_num'];
      //-- gp_
      $this->field_config['gp_']               = array();
      $this->field_config['gp_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_val'];
      $this->field_config['gp_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['unid_mont_group_digit'];
      $this->field_config['gp_']['symbol_dec'] = $_SESSION['scriptcase']['reg_conf']['dec_val'];
      $this->field_config['gp_']['symbol_mon'] = '';
      $this->field_config['gp_']['format_pos'] = $_SESSION['scriptcase']['reg_conf']['monet_f_pos'];
      $this->field_config['gp_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['monet_f_neg'];
      //-- gp_yd_
      $this->field_config['gp_yd_']               = array();
      $this->field_config['gp_yd_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_num'];
      $this->field_config['gp_yd_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['num_group_digit'];
      $this->field_config['gp_yd_']['symbol_dec'] = $_SESSION['scriptcase']['reg_conf']['dec_num'];
      $this->field_config['gp_yd_']['symbol_neg'] = $_SESSION['scriptcase']['reg_conf']['simb_neg'];
      $this->field_config['gp_yd_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['neg_num'];
      //-- pc_
      $this->field_config['pc_']               = array();
      $this->field_config['pc_']['symbol_grp'] = $_SESSION['scriptcase']['reg_conf']['grup_num'];
      $this->field_config['pc_']['symbol_fmt'] = $_SESSION['scriptcase']['reg_conf']['num_group_digit'];
      $this->field_config['pc_']['symbol_dec'] = $_SESSION['scriptcase']['reg_conf']['dec_num'];
      $this->field_config['pc_']['symbol_neg'] = $_SESSION['scriptcase']['reg_conf']['simb_neg'];
      $this->field_config['pc_']['format_neg'] = $_SESSION['scriptcase']['reg_conf']['neg_num'];
   }

   function controle()
   {
        global $nm_url_saida, $teste_validade, 
               $GLOBALS, $Campos_Crit, $Campos_Falta, $Campos_Erros, $sc_seq_vert, $sc_check_incl, 
               $glo_senha_protect, $nm_apl_dependente, $nm_form_submit, $sc_check_excl, $nm_opc_form_php, $nm_call_php, $nm_opc_lookup;


      $this->ini_controle();
      if ($this->nmgp_opcao == "change_qtd_line")
      {
          $this->nmgp_opcao = "igual";
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_max_reg'] = $this->nmgp_max_line;
      }
      if ('' != $_SESSION['scriptcase']['change_regional_old'])
      {
          $_SESSION['scriptcase']['str_conf_reg'] = $_SESSION['scriptcase']['change_regional_old'];
          $this->Ini->regionalDefault($_SESSION['scriptcase']['str_conf_reg']);
          $this->loadFieldConfig();
          $this->nm_tira_formatacao();
          $this->nm_converte_datas();

          $_SESSION['scriptcase']['str_conf_reg'] = $_SESSION['scriptcase']['change_regional_new'];
          $this->Ini->regionalDefault($_SESSION['scriptcase']['str_conf_reg']);
          $this->loadFieldConfig();
          $guarda_formatado = $this->formatado;
          $this->nm_formatar_campos();
          $this->formatado = $guarda_formatado;

          $_SESSION['scriptcase']['change_regional_old'] = '';
          $_SESSION['scriptcase']['change_regional_new'] = '';
      }

      $Campos_Crit       = "";
      $Campos_erro       = "";
      $Campos_Falta      = array();
      $Campos_Erros      = array();
      $dir_raiz          = strrpos($_SERVER['PHP_SELF'],"/") ;  
      $dir_raiz          =  substr($_SERVER['PHP_SELF'], 0, $dir_raiz + 1) ;  
      $this->nm_location = $this->Ini->sc_protocolo . $this->Ini->server . $dir_raiz; 
      $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opc_edit'] = true;  
      $sc_contr_vert = $GLOBALS["sc_contr_vert"];
      $sc_seq_vert   = 1; 
      $sc_opc_salva  = $this->nmgp_opcao; 
      $sc_todas_Crit = "";
      $sc_check_excl = array(); 
      $sc_check_incl = array(); 
      if (is_array($GLOBALS["sc_check_vert"])) 
      { 
          if ($this->nmgp_opcao == "incluir" || ($this->nmgp_opcao == "recarga" && $this->nmgp_opc_ant == "novo"))
          {
              $sc_check_incl = $GLOBALS["sc_check_vert"]; 
          }
          elseif ($this->nmgp_opcao == "alterar" || $this->nmgp_opcao == "excluir" || $this->nmgp_opcao == "recarga")
          {
              $sc_check_excl = $GLOBALS["sc_check_vert"]; 
          }
      } 
      elseif ($this->nmgp_opcao == 'incluir' && isset($_POST['upload_file_row']) && '' != $_POST['upload_file_row'])
      {
          $sc_check_incl = array($_POST['upload_file_row']);
      }
      if (empty($this->nmgp_opcao)) 
      { 
          $this->nmgp_opcao = "inicio";
      } 
      if ($this->NM_ajax_flag && 'add_new_line' == $this->NM_ajax_opcao)
      {
         $this->nmgp_opcao = "novo";
         $this->nm_select_banco();
         $this->nm_gera_html();
         $this->NM_ajax_info['newline'] = billing_item_form_pack_protect_string(NM_charset_to_utf8($this->New_Line));
         $this->NM_close_db();
         billing_item_form_pack_ajax_response();
         exit;
      }
      if ($this->NM_ajax_flag && 'backup_line' == $this->NM_ajax_opcao)
      {
         $this->nmgp_opcao = "igual";
         $this->nm_tira_formatacao();
         $this->nm_converte_datas();
         $this->nm_select_banco();
         $this->ajax_return_values();
         $this->NM_close_db();
         billing_item_form_pack_ajax_response();
         exit;
      }
      if ($this->NM_ajax_flag && 'submit_form' == $this->NM_ajax_opcao)
      {
         if (isset($this->invoice_)) { $this->nm_limpa_alfa($this->invoice_); }
         if (isset($this->item_)) { $this->nm_limpa_alfa($this->item_); }
         if (isset($this->bcode_)) { $this->nm_limpa_alfa($this->bcode_); }
         if (isset($this->lin_)) { $this->nm_limpa_alfa($this->lin_); }
         if (isset($this->sq_)) { $this->nm_limpa_alfa($this->sq_); }
         if (isset($this->style_)) { $this->nm_limpa_alfa($this->style_); }
         if (isset($this->width_)) { $this->nm_limpa_alfa($this->width_); }
         if (isset($this->color_)) { $this->nm_limpa_alfa($this->color_); }
         if (isset($this->cust_order_)) { $this->nm_limpa_alfa($this->cust_order_); }
         if (isset($this->our_order_)) { $this->nm_limpa_alfa($this->our_order_); }
         if (isset($this->price_)) { $this->nm_limpa_alfa($this->price_); }
         if (isset($this->unit_)) { $this->nm_limpa_alfa($this->unit_); }
         if (isset($this->amount_)) { $this->nm_limpa_alfa($this->amount_); }
         if (isset($this->descrip_)) { $this->nm_limpa_alfa($this->descrip_); }
         if (isset($this->dye_order_)) { $this->nm_limpa_alfa($this->dye_order_); }
         if (isset($this->dye_lot_)) { $this->nm_limpa_alfa($this->dye_lot_); }
         if (isset($this->cases_)) { $this->nm_limpa_alfa($this->cases_); }
         if (isset($this->smit_)) { $this->nm_limpa_alfa($this->smit_); }
         if (isset($this->memo_)) { $this->nm_limpa_alfa($this->memo_); }
         if (isset($this->id2_)) { $this->nm_limpa_alfa($this->id2_); }
         if (isset($this->Sc_num_lin_alt) && $this->Sc_num_lin_alt > 0) 
         {
             $sc_seq_vert = $this->Sc_num_lin_alt;
         }
         if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_form'][$sc_seq_vert]))
         {
             $this->nmgp_dados_form = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_form'][$sc_seq_vert];
             $this->cost_ = $this->nmgp_dados_form['cost_']; 
             $this->cost_yd_ = $this->nmgp_dados_form['cost_yd_']; 
             $this->gp_ = $this->nmgp_dados_form['gp_']; 
             $this->gp_yd_ = $this->nmgp_dados_form['gp_yd_']; 
             $this->pc_ = $this->nmgp_dados_form['pc_']; 
         }
         $this->controle_form_vert();
         if ($Campos_Crit != "" || !empty($Campos_Falta) || $this->Campos_Mens_erro != "")
         {
             $this->NM_rollback_db();
              if ($this->NM_ajax_flag)
              {
                  if (!isset($this->NM_ajax_info['errList']['geral_billing_item_form']) || !is_array($this->NM_ajax_info['errList']['geral_billing_item_form']))
                  {
                      $this->NM_ajax_info['errList']['geral_billing_item_form'] = array();
                  }
                  if ($Campos_Crit != "")
                  {
                      $this->NM_ajax_info['errList']['geral_billing_item_form'][] = $Campos_Crit;
                  }
                  if (!empty($Campos_Falta))
                  {
                      $this->NM_ajax_info['errList']['geral_billing_item_form'][] = $this->Formata_Campos_Falta($Campos_Falta);
                  }
                  if ($this->Campos_Mens_erro != "")
                  {
                      $this->NM_ajax_info['errList']['geral_billing_item_form'][] = $this->Campos_Mens_erro;
                  }
              }
         }
         else
         {
             $this->NM_commit_db();
         }
         if ($this->nmgp_opcao != "recarga" && $this->nmgp_opcao != "muda_form" && !$this->Apl_com_erro)
         {
             $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['recarga'] = $this->nmgp_opcao;
          if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_redir_insert']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_redir_insert'] == "ok")
          {
              if ($this->sc_teve_incl && empty($sc_todas_Crit))
              {
                  $this->NM_close_db(); 
                  $this->nmgp_redireciona(2); 
              }
          }
          if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_redir_atualiz']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_redir_atualiz'] == "ok")
          {
              if ($this->sc_teve_alt && empty($sc_todas_Crit))
              {
                  $this->NM_close_db(); 
                  $this->nmgp_redireciona(2); 
              }
              if ($this->sc_teve_excl && empty($sc_todas_Crit))
              {
                  $this->NM_close_db(); 
                  $this->nmgp_redireciona(2); 
              }
          }
         }
         $this->NM_close_db();
         billing_item_form_pack_ajax_response();
         exit;
      }
      if ($this->NM_ajax_flag && 'validate_' == substr($this->NM_ajax_opcao, 0, 9))
      {
         $Campos_Crit  = "";
         $Campos_Falta = array();
         $Campos_Erros = array();
          if ('validate_id2_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'id2_');
          }
          if ('validate_date_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'date_');
          }
          if ('validate_bcode_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'bcode_');
          }
          if ('validate_invoice_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'invoice_');
          }
          if ('validate_item_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'item_');
          }
          if ('validate_lin_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'lin_');
          }
          if ('validate_sq_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'sq_');
          }
          if ('validate_unit_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'unit_');
          }
          if ('validate_style_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'style_');
          }
          if ('validate_descrip_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'descrip_');
          }
          if ('validate_width_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'width_');
          }
          if ('validate_color_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'color_');
          }
          if ('validate_cust_order_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'cust_order_');
          }
          if ('validate_our_order_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'our_order_');
          }
          if ('validate_dye_order_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'dye_order_');
          }
          if ('validate_dye_lot_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'dye_lot_');
          }
          if ('validate_price_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'price_');
          }
          if ('validate_amount_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'amount_');
          }
          if ('validate_cases_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'cases_');
          }
          if ('validate_adate_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'adate_');
          }
          if ('validate_edate_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'edate_');
          }
          if ('validate_smit_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'smit_');
          }
          if ('validate_memo_' == $this->NM_ajax_opcao)
          {
              $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros, 'memo_');
          }
          billing_item_form_pack_ajax_response();
          exit;
      }
      while ($sc_contr_vert > $sc_seq_vert) 
      { 
         $Campos_Crit  = "";
         $Campos_Falta = array();
         $Campos_Erros = array();
         $this->id2_ = $GLOBALS["id2_" . $sc_seq_vert]; 
         $this->date_ = $GLOBALS["date_" . $sc_seq_vert]; 
         $this->bcode_ = $GLOBALS["bcode_" . $sc_seq_vert]; 
         $this->invoice_ = $GLOBALS["invoice_" . $sc_seq_vert]; 
         $this->item_ = $GLOBALS["item_" . $sc_seq_vert]; 
         $this->lin_ = $GLOBALS["lin_" . $sc_seq_vert]; 
         $this->sq_ = $GLOBALS["sq_" . $sc_seq_vert]; 
         $this->unit_ = $GLOBALS["unit_" . $sc_seq_vert]; 
         $this->style_ = $GLOBALS["style_" . $sc_seq_vert]; 
         $this->descrip_ = $GLOBALS["descrip_" . $sc_seq_vert]; 
         $this->width_ = $GLOBALS["width_" . $sc_seq_vert]; 
         $this->color_ = $GLOBALS["color_" . $sc_seq_vert]; 
         $this->cust_order_ = $GLOBALS["cust_order_" . $sc_seq_vert]; 
         $this->our_order_ = $GLOBALS["our_order_" . $sc_seq_vert]; 
         $this->dye_order_ = $GLOBALS["dye_order_" . $sc_seq_vert]; 
         $this->dye_lot_ = $GLOBALS["dye_lot_" . $sc_seq_vert]; 
         $this->price_ = $GLOBALS["price_" . $sc_seq_vert]; 
         $this->amount_ = $GLOBALS["amount_" . $sc_seq_vert]; 
         $this->cases_ = $GLOBALS["cases_" . $sc_seq_vert]; 
         $this->adate_ = $GLOBALS["adate_" . $sc_seq_vert]; 
         $this->edate_ = $GLOBALS["edate_" . $sc_seq_vert]; 
         $this->smit_ = $GLOBALS["smit_" . $sc_seq_vert]; 
         $this->memo_ = $GLOBALS["memo_" . $sc_seq_vert]; 
         if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_form'][$sc_seq_vert]))
         {
             $this->nmgp_dados_form = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_form'][$sc_seq_vert];
             $this->cost_ = $this->nmgp_dados_form['cost_']; 
             $this->cost_yd_ = $this->nmgp_dados_form['cost_yd_']; 
             $this->gp_ = $this->nmgp_dados_form['gp_']; 
             $this->gp_yd_ = $this->nmgp_dados_form['gp_yd_']; 
             $this->pc_ = $this->nmgp_dados_form['pc_']; 
         }
         if (isset($this->invoice_)) { $this->nm_limpa_alfa($this->invoice_); }
         if (isset($this->item_)) { $this->nm_limpa_alfa($this->item_); }
         if (isset($this->bcode_)) { $this->nm_limpa_alfa($this->bcode_); }
         if (isset($this->lin_)) { $this->nm_limpa_alfa($this->lin_); }
         if (isset($this->sq_)) { $this->nm_limpa_alfa($this->sq_); }
         if (isset($this->style_)) { $this->nm_limpa_alfa($this->style_); }
         if (isset($this->width_)) { $this->nm_limpa_alfa($this->width_); }
         if (isset($this->color_)) { $this->nm_limpa_alfa($this->color_); }
         if (isset($this->cust_order_)) { $this->nm_limpa_alfa($this->cust_order_); }
         if (isset($this->our_order_)) { $this->nm_limpa_alfa($this->our_order_); }
         if (isset($this->price_)) { $this->nm_limpa_alfa($this->price_); }
         if (isset($this->unit_)) { $this->nm_limpa_alfa($this->unit_); }
         if (isset($this->amount_)) { $this->nm_limpa_alfa($this->amount_); }
         if (isset($this->descrip_)) { $this->nm_limpa_alfa($this->descrip_); }
         if (isset($this->dye_order_)) { $this->nm_limpa_alfa($this->dye_order_); }
         if (isset($this->dye_lot_)) { $this->nm_limpa_alfa($this->dye_lot_); }
         if (isset($this->cases_)) { $this->nm_limpa_alfa($this->cases_); }
         if (isset($this->smit_)) { $this->nm_limpa_alfa($this->smit_); }
         if (isset($this->memo_)) { $this->nm_limpa_alfa($this->memo_); }
         if (isset($this->id2_)) { $this->nm_limpa_alfa($this->id2_); }
         if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_form'])) 
         {
            $this->nmgp_dados_form = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_form'][$sc_seq_vert];
         }
         if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'])) 
         {
            $this->nmgp_dados_select = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert];
         }
         if ($this->nmgp_opcao != "recarga" && (!in_array($sc_seq_vert, $sc_check_excl) && !in_array($sc_seq_vert, $sc_check_incl) ))
         { }
         else
         {
             $this->controle_form_vert(); 
             $this->nmgp_opcao = $sc_opc_salva; 
             if ($this->nmgp_opcao != "recarga"  && $this->nmgp_opcao != "muda_form" && ($Campos_Crit != "" || !empty($Campos_Falta) || $this->Campos_Mens_erro != ""))
             {
                 $sc_todas_Crit .= (!empty($sc_todas_Crit)) ? "<br>" : ""; 
                 $sc_todas_Crit .= "<B>" . $this->Ini->Nm_lang['lang_errm_line'] . $sc_seq_vert . "</B>: "; 
                 $sc_todas_Crit .= $this->Formata_Erros($Campos_Crit, $Campos_Falta, $Campos_Erros);
                 $this->Campos_Mens_erro = ""; 
             }
             if ($this->nmgp_opcao != "recarga") 
             {
                $this->nm_guardar_campos();
                $this->nm_formatar_campos();
             }
             $this->form_vert_billing_item_form[$sc_seq_vert]['id2_'] =  $this->id2_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['date_'] =  $this->date_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['bcode_'] =  $this->bcode_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['invoice_'] =  $this->invoice_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['item_'] =  $this->item_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['lin_'] =  $this->lin_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['sq_'] =  $this->sq_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['unit_'] =  $this->unit_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['style_'] =  $this->style_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['descrip_'] =  $this->descrip_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['width_'] =  $this->width_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['color_'] =  $this->color_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cust_order_'] =  $this->cust_order_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['our_order_'] =  $this->our_order_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['dye_order_'] =  $this->dye_order_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['dye_lot_'] =  $this->dye_lot_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['price_'] =  $this->price_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['amount_'] =  $this->amount_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cases_'] =  $this->cases_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['adate_'] =  $this->adate_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['edate_'] =  $this->edate_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['smit_'] =  $this->smit_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['memo_'] =  $this->memo_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cost_'] =  $this->cost_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cost_yd_'] =  $this->cost_yd_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['gp_'] =  $this->gp_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['gp_yd_'] =  $this->gp_yd_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['pc_'] =  $this->pc_; 
         }
         $sc_seq_vert++; 
      } 
      if (!empty($sc_todas_Crit)) 
      { 
          $this->Erro->mensagem(__FILE__, __LINE__, "critica", $sc_todas_Crit); 
          if ($this->nmgp_opcao == "incluir")
          { 
              $this->nmgp_opcao = "novo"; 
          }
      } 
      elseif ($this->nmgp_opcao == "incluir")
      { 
          $this->nmgp_opcao = "novo"; 
      }
      if ($this->nmgp_opcao == 'incluir' && isset($_POST['upload_file_row']) && '' != $_POST['upload_file_row'])
      {
          $this->nmgp_opcao = 'igual';
      }
      if ($this->nmgp_opcao != "recarga" && $this->nmgp_opcao != "muda_form") 
      { 
          if ($this->sc_teve_incl) 
          { 
              $this->sc_after_all_insert = true;
          }
          if ($this->sc_teve_alt || $this->sc_teve_excl) 
          { 
              $this->sc_after_all_update = true;
          }
          if (empty($sc_todas_Crit)) 
          { 
              $this->NM_commit_db(); 
              $this->nm_select_banco();
              $sc_check_excl = array(); 
          } 
          else
          { 
              $this->NM_rollback_db(); 
          } 
      } 
      if ($this->nmgp_opcao == "recarga") 
      { 
          $this->NM_gera_nav_page(); 
      } 
      if ($this->NM_ajax_flag && ('navigate_form' == $this->NM_ajax_opcao || !empty($this->nmgp_refresh_fields)))
      {
          $this->ajax_return_values();
          $this->ajax_add_parameters();
          $this->NM_close_db();
          billing_item_form_pack_ajax_response();
          exit;
      }
      if ($this->NM_ajax_flag && 'table_refresh' == $this->NM_ajax_opcao)
      {
          $this->nm_gera_html();
          $this->NM_ajax_info['tableRefresh'] = NM_charset_to_utf8($this->Table_refresh . $this->New_Line) . '</table>';
          $this->NM_ajax_info['navStatus']['ret'] = $this->Nav_permite_ret ? 'S' : 'N';
          $this->NM_ajax_info['navStatus']['ava'] = $this->Nav_permite_ava ? 'S' : 'N';
          $this->NM_ajax_info['rsSize'] = sizeof($this->form_vert_billing_item_form);
          $this->NM_ajax_info['fldList']['invoice_']['keyVal'] = htmlentities($this->nmgp_dados_form['invoice_'], ENT_COMPAT, $_SESSION['scriptcase']['charset']);
          $this->NM_ajax_info['fldList']['id2_']['keyVal'] = htmlentities($this->nmgp_dados_form['id2_'], ENT_COMPAT, $_SESSION['scriptcase']['charset']);
          $this->NM_close_db();
          billing_item_form_pack_ajax_response();
          exit;
      }
      if ($this->nmgp_opcao != "recarga" && $this->nmgp_opcao != "muda_form" && !$this->Apl_com_erro)
      {
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['recarga'] = $this->nmgp_opcao;
          if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_redir_insert']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_redir_insert'] == "ok")
          {
              if ($this->sc_teve_incl && empty($sc_todas_Crit))
              {
                  $this->NM_close_db(); 
                  $this->nmgp_redireciona(2); 
              }
          }
          if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_redir_atualiz']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_redir_atualiz'] == "ok")
          {
              if ($this->sc_teve_alt && empty($sc_todas_Crit))
              {
                  $this->NM_close_db(); 
                  $this->nmgp_redireciona(2); 
              }
              if ($this->sc_teve_excl && empty($sc_todas_Crit))
              {
                  $this->NM_close_db(); 
                  $this->nmgp_redireciona(2); 
              }
          }
      }
      $this->nm_todas_criticas = $sc_todas_Crit;
      $this->nm_gera_html();
      $this->NM_close_db(); 
   }
   function controle_form_vert()
   {
     global $nm_opc_lookup,$Campos_Crit, $Campos_Falta, $Campos_Erros, 
            $glo_senha_protect, $nm_apl_dependente, $nm_form_submit;

//
//-----> 
//
      if (isset($this->sc_inline_call) && 'Y' == $this->sc_inline_call)
      {
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['inline_form_seq'] = $this->sc_seq_row;
          $this->nm_tira_formatacao();
          $this->nm_converte_datas();
      }
      if ($this->nmgp_opcao == "recarga" || $this->nmgp_opcao == "muda_form") 
      {
          $this->nm_tira_formatacao();
          $this->nm_converte_datas();
          $nm_sc_sv_opcao = $this->nmgp_opcao; 
          $this->nmgp_opcao = "nada"; 
          $this->nm_acessa_banco();
          if ($this->NM_ajax_flag)
          {
              $this->ajax_return_values();
              billing_item_form_pack_ajax_response();
              exit;
          }
          $this->nm_formatar_campos();
          $this->nmgp_opcao = $nm_sc_sv_opcao; 
          return; 
      }
      if ($this->nmgp_opcao == "incluir" || $this->nmgp_opcao == "alterar" || $this->nmgp_opcao == "excluir") 
      {
          $this->Valida_campos($Campos_Crit, $Campos_Falta, $Campos_Erros) ; 
          $_SESSION['scriptcase']['billing_item_form']['contr_erro'] = 'off';
          if ($Campos_Crit != "") 
          {
              $Campos_Crit = $this->Ini->Nm_lang['lang_errm_flds'] . ' ' . $Campos_Crit ; 
          }
          if ($Campos_Crit != "" || !empty($Campos_Falta) || $this->Campos_Mens_erro != "")
          {
              $this->nmgp_opc_ant = $this->nmgp_opcao ; 
              if ($this->nmgp_opcao == "incluir" && $nm_apl_dependente == 1) 
              { 
                  $this->nm_flag_saida_novo = "S";; 
              }
              if ($this->nmgp_opcao == "incluir") 
              { 
                  $GLOBALS["erro_incl"] = 1; 
              }
              $this->nmgp_opcao = "nada" ; 
          }
      }
      elseif (isset($nm_form_submit) && $this->nmgp_opcao != "menu_link")
      {
      }
//
      if ($this->nmgp_opcao != "nada")
      {
          $this->nm_acessa_banco();
      }
      else
      {
           if ($this->nmgp_opc_ant == "incluir") 
           { 
               $this->nm_proc_onload(false);
           }
           else
           { 
              $this->nm_guardar_campos();
           }
      }
   }
//
//--------------------------------------------------------------------------------------
   function NM_has_trans()
   {
       return !in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access);
   }
//
//--------------------------------------------------------------------------------------
   function NM_commit_db()
   {
       if ($this->Ini->sc_tem_trans_banco && !$this->Embutida_proc)
       { 
           $this->Db->CommitTrans(); 
           $this->Ini->sc_tem_trans_banco = false;
       } 
   }
//
//--------------------------------------------------------------------------------------
   function NM_rollback_db()
   {
       if ($this->Ini->sc_tem_trans_banco && !$this->Embutida_proc)
       { 
           $this->Db->RollbackTrans(); 
           $this->Ini->sc_tem_trans_banco = false;
       } 
   }
//
//--------------------------------------------------------------------------------------
   function NM_close_db()
   {
       if ($this->Db && !$this->Embutida_proc)
       { 
           $this->Db->Close(); 
       } 
   }
   function sc_btn_sc_btn_0() 
   {
        global $nm_url_saida, $teste_validade, 
               $GLOBALS, $Campos_Crit, $Campos_Falta, $Campos_Erros, $sc_seq_vert, $sc_check_incl, 
               $glo_senha_protect, $nm_apl_dependente, $nm_form_submit, $sc_check_excl, $nm_opc_form_php, $nm_call_php, $nm_opc_lookup;
 
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
            "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">

<html<?php echo $_SESSION['scriptcase']['reg_conf']['html_dir'] ?>>
 <head>
    <META http-equiv="Content-Type" content="text/html; charset=<?php echo $_SESSION['scriptcase']['charset_html'] ?>" />
    <SCRIPT type="text/javascript">
      var sc_pathToTB = '<?php echo $this->Ini->path_prod ?>/third/jquery_plugin/thickbox/';
    </SCRIPT>
    <SCRIPT type="text/javascript" src="<?php echo $this->Ini->path_prod; ?>/third/jquery/js/jquery.js"></SCRIPT>
    <SCRIPT type="text/javascript" src="<?php echo $this->Ini->path_prod; ?>/third/jquery_plugin/malsup-blockui/jquery.blockUI.js"></SCRIPT>
    <SCRIPT type="text/javascript" src="<?php echo $this->Ini->path_prod; ?>/third/jquery_plugin/thickbox/thickbox-compressed.js"></SCRIPT>
    <link rel="stylesheet" href="<?php echo $this->Ini->path_prod ?>/third/jquery_plugin/thickbox/thickbox.css" type="text/css" media="screen" />
    <link rel="stylesheet" type="text/css" href="../_lib/css/<?php echo $this->Ini->str_schema_all ?>_form.css" />
 </head>
  <body class="scFormPage">
      <table class="scFormTabela" align="center"><tr><td>
<?php
      $nmgp_opcao_saida_php = "igual";
      $nmgp_opc_ant_saida_php = "";
      if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opc_ant'] == "novo" || $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opc_ant'] == "incluir")
      {
          $nmgp_opc_ant_saida_php = "novo";
          $nmgp_opcao_saida_php   = "recarga";
      }
      $nm_f_saida = "./";
      nm_limpa_numero($this->id2_, $this->field_config['id2_']['symbol_grp']) ; 
      nm_limpa_data($this->date_, $this->field_config['date_']['date_sep']) ; 
      nm_limpa_numero($this->item_, $this->field_config['item_']['symbol_grp']) ; 
      if (!empty($this->field_config['lin_']['symbol_dec']))
      {
          nm_limpa_valor($this->lin_, $this->field_config['lin_']['symbol_dec'], $this->field_config['lin_']['symbol_grp']) ; 
      }
      if (!empty($this->field_config['sq_']['symbol_dec']))
      {
          nm_limpa_valor($this->sq_, $this->field_config['sq_']['symbol_dec'], $this->field_config['sq_']['symbol_grp']) ; 
      }
      if (!empty($this->field_config['price_']['symbol_dec']))
      {
          nm_limpa_valor($this->price_, $this->field_config['price_']['symbol_dec'], $this->field_config['price_']['symbol_grp']) ; 
      }
      if (!empty($this->field_config['amount_']['symbol_dec']))
      {
          $this->sc_remove_currency($this->amount_, $this->field_config['amount_']['symbol_dec'], $this->field_config['amount_']['symbol_grp'], $this->field_config['amount_']['symbol_mon']); 
          nm_limpa_valor($this->amount_, $this->field_config['amount_']['symbol_dec'], $this->field_config['amount_']['symbol_grp']) ; 
      }
      nm_limpa_data($this->adate_, $this->field_config['adate_']['date_sep']) ; 
      nm_limpa_data($this->edate_, $this->field_config['edate_']['date_sep']) ; 
      $this->nm_converte_datas();
      $_SESSION['scriptcase']['billing_item_form']['contr_erro'] = 'on';
 
$update_sql = "ALTER TABLE item ADD ID2 INT PRIMARY KEY AUTO_INCREMENT";

     $nm_select = $update_sql; 
         $_SESSION['scriptcase']['sc_sql_ult_comando'] = $nm_select;
      $_SESSION['scriptcase']['sc_sql_ult_conexao'] = ''; 
         $rf = $this->Db->Execute($nm_select);
         if ($rf === false)
         {
             $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dber'], $this->Db->ErrorMsg());
             $this->NM_rollback_db(); 
             if ($this->NM_ajax_flag)
             {
                billing_item_form_pack_ajax_response();
             }
             exit;
         }
         $rf->Close();
      ;
$_SESSION['scriptcase']['billing_item_form']['contr_erro'] = 'off'; 
?>
      </td></tr><tr><td align="center">
      <form name="FPHP" method="post" 
                        action="<?php echo $nm_f_saida ?>" 
                        target="_self">
      <input type=hidden name="nmgp_opcao" value=""/>
      <input type=hidden name="script_case_init" value="<?php  echo NM_encode_input($this->Ini->sc_page); ?>"/>
      <input type=hidden name="script_case_session" value="<?php  echo NM_encode_input(session_id()); ?>"/>
      <input type=hidden name="invoice_" value="<?php echo NM_encode_input($this->invoice_) ?>"/>
      <input type=hidden name="id2_" value="<?php echo NM_encode_input($this->id2_) ?>"/>
      <input type=hidden name="nmgp_opcao" value="<?php echo NM_encode_input($nmgp_opcao_saida_php); ?>"/>
      <input type=hidden name="nmgp_opc_ant" value="<?php echo NM_encode_input($nmgp_opc_ant_saida_php); ?>"/>
      <input type=submit name="nmgp_bok" value="<?php echo $this->Ini->Nm_lang['lang_btns_cfrm'] ?>"/>
      </form>
      </td></tr></table>
      </body>
      </html>
<?php
   }
//
//--------------------------------------------------------------------------------------
   function Formata_Erros($Campos_Crit, $Campos_Falta, $Campos_Erros, $mode = 3) 
   {
       switch ($mode)
       {
           case 1:
               $campos_erro = array();
               if (!empty($Campos_Crit))
               {
                   $campos_erro[] = $Campos_Crit;
               }
               if (!empty($Campos_Falta))
               {
                   $campos_erro[] = $this->Formata_Campos_Falta($Campos_Falta);
               }
               if (!empty($this->Campos_Mens_erro))
               {
                   $campos_erro[] = $this->Campos_Mens_erro;
               }
               return implode('<br />', $campos_erro);
               break;

           case 2:
               $campos_erro = array();
               if (!empty($Campos_Crit))
               {
                   $campos_erro[] = $Campos_Crit;
               }
               if (!empty($Campos_Falta))
               {
                   $campos_erro[] = $this->Formata_Campos_Falta($Campos_Falta, true);
               }
               if (!empty($this->Campos_Mens_erro))
               {
                   $campos_erro[] = $this->Campos_Mens_erro;
               }
               return implode('<br />', $campos_erro);
               break;

           case 3:
               $campos_erro = array();
               if (!empty($Campos_Erros))
               {
                   $campos_erro[] = $this->Formata_Campos_Erros($Campos_Erros);
               }
               if (!empty($this->Campos_Mens_erro))
               {
                   $campos_mens_erro = str_replace(array('<br />', '<br>', '<BR />'), array('<BR>', '<BR>', '<BR>'), $this->Campos_Mens_erro);
                   $campos_mens_erro = explode('<BR>', $campos_mens_erro);
                   foreach ($campos_mens_erro as $msg_erro)
                   {
                       if ('' != $msg_erro && !in_array($msg_erro, $campos_erro))
                       {
                           $campos_erro[] = $msg_erro;
                       }
                   }
               }
               return implode('<br />', $campos_erro);
               break;
       }
   }

   function Formata_Campos_Falta($Campos_Falta, $table = false) 
   {
       $Campos_Falta = array_unique($Campos_Falta);

       if (!$table)
       {
           return $this->Ini->Nm_lang['lang_errm_reqd'] . ' ' . implode('; ', $Campos_Falta);
       }

       $aCols  = array();
       $iTotal = sizeof($Campos_Falta);
       $iCols  = 6 > $iTotal ? 1 : (11 > $iTotal ? 2 : (16 > $iTotal ? 3 : 4));
       $iItems = ceil($iTotal / $iCols);
       $iNowC  = 0;
       $iNowI  = 0;

       foreach ($Campos_Falta as $campo)
       {
           $aCols[$iNowC][] = $campo;
           if ($iItems == ++$iNowI)
           {
               $iNowC++;
               $iNowI = 0;
           }
       }

       $sError  = '<table style="border-collapse: collapse; border-width: 0px">';
       $sError .= '<tr>';
       $sError .= '<td class="scFormErrorMessageFont" style="padding: 0; vertical-align: top; white-space: nowrap">' . $this->Ini->Nm_lang['lang_errm_reqd'] . '</td>';
       foreach ($aCols as $aCol)
       {
           $sError .= '<td class="scFormErrorMessageFont" style="padding: 0 6px; vertical-align: top; white-space: nowrap">' . implode('<br />', $aCol) . '</td>';
       }
       $sError .= '</tr>';
       $sError .= '</table>';

       return $sError;
   }

   function Formata_Campos_Crit($Campos_Crit, $table = false) 
   {
       $Campos_Crit = array_unique($Campos_Crit);

       if (!$table)
       {
           return $this->Ini->Nm_lang['lang_errm_flds'] . ' ' . implode('; ', $Campos_Crit);
       }

       $aCols  = array();
       $iTotal = sizeof($Campos_Crit);
       $iCols  = 6 > $iTotal ? 1 : (11 > $iTotal ? 2 : (16 > $iTotal ? 3 : 4));
       $iItems = ceil($iTotal / $iCols);
       $iNowC  = 0;
       $iNowI  = 0;

       foreach ($Campos_Crit as $campo)
       {
           $aCols[$iNowC][] = $campo;
           if ($iItems == ++$iNowI)
           {
               $iNowC++;
               $iNowI = 0;
           }
       }

       $sError  = '<table style="border-collapse: collapse; border-width: 0px">';
       $sError .= '<tr>';
       $sError .= '<td class="scFormErrorMessageFont" style="padding: 0; vertical-align: top; white-space: nowrap">' . $this->Ini->Nm_lang['lang_errm_flds'] . '</td>';
       foreach ($aCols as $aCol)
       {
           $sError .= '<td class="scFormErrorMessageFont" style="padding: 0 6px; vertical-align: top; white-space: nowrap">' . implode('<br />', $aCol) . '</td>';
       }
       $sError .= '</tr>';
       $sError .= '</table>';

       return $sError;
   }

   function Formata_Campos_Erros($Campos_Erros) 
   {
       $sError  = '<table style="border-collapse: collapse; border-width: 0px">';

       foreach ($Campos_Erros as $campo => $erros)
       {
           $sError .= '<tr>';
           $sError .= '<td class="scFormErrorMessageFont" style="padding: 0; vertical-align: top; white-space: nowrap">' . $this->Recupera_Nome_Campo($campo) . ':</td>';
           $sError .= '<td class="scFormErrorMessageFont" style="padding: 0 6px; vertical-align: top; white-space: nowrap">' . implode('<br />', array_unique($erros)) . '</td>';
           $sError .= '</tr>';
       }

       $sError .= '</table>';

       return $sError;
   }

   function Recupera_Nome_Campo($campo) 
   {
       switch($campo)
       {
           case 'id2_':
               return "ID2";
               break;
           case 'date_':
               return "DATE";
               break;
           case 'bcode_':
               return "BCODE";
               break;
           case 'invoice_':
               return "INVOICE";
               break;
           case 'item_':
               return "ITEM";
               break;
           case 'lin_':
               return "LIN";
               break;
           case 'sq_':
               return "SQ";
               break;
           case 'unit_':
               return "UNIT";
               break;
           case 'style_':
               return "STYLE";
               break;
           case 'descrip_':
               return "DESCRIP";
               break;
           case 'width_':
               return "WIDTH";
               break;
           case 'color_':
               return "COLOR";
               break;
           case 'cust_order_':
               return "CUST ORDER";
               break;
           case 'our_order_':
               return "OUR ORDER";
               break;
           case 'dye_order_':
               return "DYE ORDER";
               break;
           case 'dye_lot_':
               return "DYE LOT";
               break;
           case 'price_':
               return "PRICE";
               break;
           case 'amount_':
               return "AMOUNT";
               break;
           case 'cases_':
               return "CASES";
               break;
           case 'adate_':
               return "ADATE";
               break;
           case 'edate_':
               return "EDATE";
               break;
           case 'smit_':
               return "SMIT";
               break;
           case 'memo_':
               return "MEMO";
               break;
           case 'cost_':
               return "COST";
               break;
           case 'cost_yd_':
               return "COST YD";
               break;
           case 'gp_':
               return "GP";
               break;
           case 'gp_yd_':
               return "GP YD";
               break;
           case 'pc_':
               return "PC";
               break;
       }

       return $campo;
   }

   function dateDefaultFormat()
   {
       if (isset($this->Ini->Nm_conf_reg[$this->Ini->str_conf_reg]['data_format']))
       {
           $sDate = str_replace('yyyy', 'Y', $this->Ini->Nm_conf_reg[$this->Ini->str_conf_reg]['data_format']);
           $sDate = str_replace('mm',   'm', $sDate);
           $sDate = str_replace('dd',   'd', $sDate);
           return substr(chunk_split($sDate, 1, $this->Ini->Nm_conf_reg[$this->Ini->str_conf_reg]['data_sep']), 0, -1);
       }
       elseif ('en_us' == $this->Ini->str_lang)
       {
           return 'm/d/Y';
       }
       else
       {
           return 'd/m/Y';
       }
   } // dateDefaultFormat

//
//--------------------------------------------------------------------------------------
   function Valida_campos(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros, $filtro = '') 
   {
     global $nm_browser, $teste_validade, $sc_seq_vert;
//---------------------------------------------------------
     $this->sc_force_zero = array();
      if ('' == $filtro || 'id2_' == $filtro)
        $this->ValidateField_id2_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'date_' == $filtro)
        $this->ValidateField_date_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'bcode_' == $filtro)
        $this->ValidateField_bcode_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'invoice_' == $filtro)
        $this->ValidateField_invoice_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'item_' == $filtro)
        $this->ValidateField_item_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'lin_' == $filtro)
        $this->ValidateField_lin_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'sq_' == $filtro)
        $this->ValidateField_sq_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'unit_' == $filtro)
        $this->ValidateField_unit_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'style_' == $filtro)
        $this->ValidateField_style_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'descrip_' == $filtro)
        $this->ValidateField_descrip_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'width_' == $filtro)
        $this->ValidateField_width_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'color_' == $filtro)
        $this->ValidateField_color_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'cust_order_' == $filtro)
        $this->ValidateField_cust_order_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'our_order_' == $filtro)
        $this->ValidateField_our_order_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'dye_order_' == $filtro)
        $this->ValidateField_dye_order_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'dye_lot_' == $filtro)
        $this->ValidateField_dye_lot_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'price_' == $filtro)
        $this->ValidateField_price_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'amount_' == $filtro)
        $this->ValidateField_amount_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'cases_' == $filtro)
        $this->ValidateField_cases_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'adate_' == $filtro)
        $this->ValidateField_adate_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'edate_' == $filtro)
        $this->ValidateField_edate_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'smit_' == $filtro)
        $this->ValidateField_smit_($Campos_Crit, $Campos_Falta, $Campos_Erros);
      if ('' == $filtro || 'memo_' == $filtro)
        $this->ValidateField_memo_($Campos_Crit, $Campos_Falta, $Campos_Erros);
//-- converter datas   
      $this->nm_converte_datas();
//---
      if (!empty($Campos_Crit) || !empty($Campos_Falta) || !empty($this->Campos_Mens_erro))
      {
          if (!empty($this->sc_force_zero))
          {
              foreach ($this->sc_force_zero as $i_force_zero => $sc_force_zero_field)
              {
                  eval('$this->' . $sc_force_zero_field . ' = "";');
                  unset($this->sc_force_zero[$i_force_zero]);
              }
          }
      }
   }

    function ValidateField_id2_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      nm_limpa_numero($this->id2_, $this->field_config['id2_']['symbol_grp']) ; 
      if ($this->nmgp_opcao == "incluir")
      { 
          if ($this->id2_ != '')  
          { 
              $iTestSize = 11;
              if (strlen($this->id2_) > $iTestSize)  
              { 
                  $Campos_Crit .= "ID2: " . $this->Ini->Nm_lang['lang_errm_size']; 
                  if (!isset($Campos_Erros['id2_']))
                  {
                      $Campos_Erros['id2_'] = array();
                  }
                  $Campos_Erros['id2_'][] = $this->Ini->Nm_lang['lang_errm_size'];
                  if (!isset($this->NM_ajax_info['errList']['id2_']) || !is_array($this->NM_ajax_info['errList']['id2_']))
                  {
                      $this->NM_ajax_info['errList']['id2_'] = array();
                  }
                  $this->NM_ajax_info['errList']['id2_'][] = $this->Ini->Nm_lang['lang_errm_size'];
              } 
              if ($teste_validade->Valor($this->id2_, 11, 0, 0, 0, "N") == false)  
              { 
                  $Campos_Crit .= "ID2; " ; 
                  if (!isset($Campos_Erros['id2_']))
                  {
                      $Campos_Erros['id2_'] = array();
                  }
                  $Campos_Erros['id2_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
                  if (!isset($this->NM_ajax_info['errList']['id2_']) || !is_array($this->NM_ajax_info['errList']['id2_']))
                  {
                      $this->NM_ajax_info['errList']['id2_'] = array();
                  }
                  $this->NM_ajax_info['errList']['id2_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
              } 
          } 
           elseif (!isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['php_cmp_required']['id2_']) || $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['php_cmp_required']['id2_'] == "on") 
           { 
              $Campos_Falta[] = "ID2" ; 
              if (!isset($Campos_Erros['id2_']))
              {
                  $Campos_Erros['id2_'] = array();
              }
              $Campos_Erros['id2_'][] = $this->Ini->Nm_lang['lang_errm_ajax_rqrd'];
                  if (!isset($this->NM_ajax_info['errList']['id2_']) || !is_array($this->NM_ajax_info['errList']['id2_']))
                  {
                      $this->NM_ajax_info['errList']['id2_'] = array();
                  }
                  $this->NM_ajax_info['errList']['id2_'][] = $this->Ini->Nm_lang['lang_errm_ajax_rqrd'];
           } 
      } 
    } // ValidateField_id2_

    function ValidateField_date_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      nm_limpa_data($this->date_, $this->field_config['date_']['date_sep']) ; 
      $trab_dt_min = ""; 
      $trab_dt_max = ""; 
      if ($this->nmgp_opcao != "excluir") 
      { 
          $guarda_datahora = $this->field_config['date_']['date_format']; 
          if (false !== strpos($guarda_datahora, ';')) $this->field_config['date_']['date_format'] = substr($guarda_datahora, 0, strpos($guarda_datahora, ';'));
          $Format_Data = $this->field_config['date_']['date_format']; 
          nm_limpa_data($Format_Data, $this->field_config['date_']['date_sep']) ; 
          if (trim($this->date_) != "")  
          { 
              if ($teste_validade->Data($this->date_, $Format_Data, $trab_dt_min, $trab_dt_max) == false)  
              { 
                  $Campos_Crit .= "DATE; " ; 
                  if (!isset($Campos_Erros['date_']))
                  {
                      $Campos_Erros['date_'] = array();
                  }
                  $Campos_Erros['date_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
                  if (!isset($this->NM_ajax_info['errList']['date_']) || !is_array($this->NM_ajax_info['errList']['date_']))
                  {
                      $this->NM_ajax_info['errList']['date_'] = array();
                  }
                  $this->NM_ajax_info['errList']['date_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
              } 
          } 
          $this->field_config['date_']['date_format'] = $guarda_datahora; 
       } 
    } // ValidateField_date_

    function ValidateField_bcode_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->bcode_) > 4) 
          { 
              $Campos_Crit .= "BCODE " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 4 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['bcode_']))
              {
                  $Campos_Erros['bcode_'] = array();
              }
              $Campos_Erros['bcode_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 4 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['bcode_']) || !is_array($this->NM_ajax_info['errList']['bcode_']))
              {
                  $this->NM_ajax_info['errList']['bcode_'] = array();
              }
              $this->NM_ajax_info['errList']['bcode_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 4 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_bcode_

    function ValidateField_invoice_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->invoice_) > 5) 
          { 
              $Campos_Crit .= "INVOICE " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 5 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['invoice_']))
              {
                  $Campos_Erros['invoice_'] = array();
              }
              $Campos_Erros['invoice_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 5 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['invoice_']) || !is_array($this->NM_ajax_info['errList']['invoice_']))
              {
                  $this->NM_ajax_info['errList']['invoice_'] = array();
              }
              $this->NM_ajax_info['errList']['invoice_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 5 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_invoice_

    function ValidateField_item_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->item_ == "")  
      { 
          $this->item_ = 0;
          $this->sc_force_zero[] = 'item_';
      } 
      nm_limpa_numero($this->item_, $this->field_config['item_']['symbol_grp']) ; 
      if ($this->nmgp_opcao != "excluir") 
      { 
          if ($this->item_ != '')  
          { 
              $iTestSize = 4;
              if (strlen($this->item_) > $iTestSize)  
              { 
                  $Campos_Crit .= "ITEM: " . $this->Ini->Nm_lang['lang_errm_size']; 
                  if (!isset($Campos_Erros['item_']))
                  {
                      $Campos_Erros['item_'] = array();
                  }
                  $Campos_Erros['item_'][] = $this->Ini->Nm_lang['lang_errm_size'];
                  if (!isset($this->NM_ajax_info['errList']['item_']) || !is_array($this->NM_ajax_info['errList']['item_']))
                  {
                      $this->NM_ajax_info['errList']['item_'] = array();
                  }
                  $this->NM_ajax_info['errList']['item_'][] = $this->Ini->Nm_lang['lang_errm_size'];
              } 
              if ($teste_validade->Valor($this->item_, 4, 0, 0, 0, "N") == false)  
              { 
                  $Campos_Crit .= "ITEM; " ; 
                  if (!isset($Campos_Erros['item_']))
                  {
                      $Campos_Erros['item_'] = array();
                  }
                  $Campos_Erros['item_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
                  if (!isset($this->NM_ajax_info['errList']['item_']) || !is_array($this->NM_ajax_info['errList']['item_']))
                  {
                      $this->NM_ajax_info['errList']['item_'] = array();
                  }
                  $this->NM_ajax_info['errList']['item_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
              } 
          } 
      } 
    } // ValidateField_item_

    function ValidateField_lin_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->lin_ == "")  
      { 
          $this->lin_ = 0;
          $this->sc_force_zero[] = 'lin_';
      } 
      if (!empty($this->field_config['lin_']['symbol_dec']))
      {
          nm_limpa_valor($this->lin_, $this->field_config['lin_']['symbol_dec'], $this->field_config['lin_']['symbol_grp']) ; 
          if ('.' == substr($this->lin_, 0, 1))
          {
              if ('' == str_replace('0', '', substr($this->lin_, 1)))
              {
                  $this->lin_ = '';
              }
              else
              {
                  $this->lin_ = '0' . $this->lin_;
              }
          }
      }
      if ($this->nmgp_opcao != "excluir") 
      { 
          if ($this->lin_ != '')  
          { 
              $iTestSize = 14;
              if (strlen($this->lin_) > $iTestSize)  
              { 
                  $Campos_Crit .= "LIN: " . $this->Ini->Nm_lang['lang_errm_size']; 
                  if (!isset($Campos_Erros['lin_']))
                  {
                      $Campos_Erros['lin_'] = array();
                  }
                  $Campos_Erros['lin_'][] = $this->Ini->Nm_lang['lang_errm_size'];
                  if (!isset($this->NM_ajax_info['errList']['lin_']) || !is_array($this->NM_ajax_info['errList']['lin_']))
                  {
                      $this->NM_ajax_info['errList']['lin_'] = array();
                  }
                  $this->NM_ajax_info['errList']['lin_'][] = $this->Ini->Nm_lang['lang_errm_size'];
              } 
              if ($teste_validade->Valor($this->lin_, 10, 3, 0, 0, "N") == false)  
              { 
                  $Campos_Crit .= "LIN; " ; 
                  if (!isset($Campos_Erros['lin_']))
                  {
                      $Campos_Erros['lin_'] = array();
                  }
                  $Campos_Erros['lin_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
                  if (!isset($this->NM_ajax_info['errList']['lin_']) || !is_array($this->NM_ajax_info['errList']['lin_']))
                  {
                      $this->NM_ajax_info['errList']['lin_'] = array();
                  }
                  $this->NM_ajax_info['errList']['lin_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
              } 
          } 
      } 
    } // ValidateField_lin_

    function ValidateField_sq_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->sq_ == "")  
      { 
          $this->sq_ = 0;
          $this->sc_force_zero[] = 'sq_';
      } 
      if (!empty($this->field_config['sq_']['symbol_dec']))
      {
          nm_limpa_valor($this->sq_, $this->field_config['sq_']['symbol_dec'], $this->field_config['sq_']['symbol_grp']) ; 
          if ('.' == substr($this->sq_, 0, 1))
          {
              if ('' == str_replace('0', '', substr($this->sq_, 1)))
              {
                  $this->sq_ = '';
              }
              else
              {
                  $this->sq_ = '0' . $this->sq_;
              }
          }
      }
      if ($this->nmgp_opcao != "excluir") 
      { 
          if ($this->sq_ != '')  
          { 
              $iTestSize = 14;
              if (strlen($this->sq_) > $iTestSize)  
              { 
                  $Campos_Crit .= "SQ: " . $this->Ini->Nm_lang['lang_errm_size']; 
                  if (!isset($Campos_Erros['sq_']))
                  {
                      $Campos_Erros['sq_'] = array();
                  }
                  $Campos_Erros['sq_'][] = $this->Ini->Nm_lang['lang_errm_size'];
                  if (!isset($this->NM_ajax_info['errList']['sq_']) || !is_array($this->NM_ajax_info['errList']['sq_']))
                  {
                      $this->NM_ajax_info['errList']['sq_'] = array();
                  }
                  $this->NM_ajax_info['errList']['sq_'][] = $this->Ini->Nm_lang['lang_errm_size'];
              } 
              if ($teste_validade->Valor($this->sq_, 10, 3, 0, 0, "N") == false)  
              { 
                  $Campos_Crit .= "SQ; " ; 
                  if (!isset($Campos_Erros['sq_']))
                  {
                      $Campos_Erros['sq_'] = array();
                  }
                  $Campos_Erros['sq_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
                  if (!isset($this->NM_ajax_info['errList']['sq_']) || !is_array($this->NM_ajax_info['errList']['sq_']))
                  {
                      $this->NM_ajax_info['errList']['sq_'] = array();
                  }
                  $this->NM_ajax_info['errList']['sq_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
              } 
          } 
      } 
    } // ValidateField_sq_

    function ValidateField_unit_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->unit_) > 3) 
          { 
              $Campos_Crit .= "UNIT " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 3 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['unit_']))
              {
                  $Campos_Erros['unit_'] = array();
              }
              $Campos_Erros['unit_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 3 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['unit_']) || !is_array($this->NM_ajax_info['errList']['unit_']))
              {
                  $this->NM_ajax_info['errList']['unit_'] = array();
              }
              $this->NM_ajax_info['errList']['unit_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 3 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_unit_

    function ValidateField_style_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->style_) > 13) 
          { 
              $Campos_Crit .= "STYLE " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 13 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['style_']))
              {
                  $Campos_Erros['style_'] = array();
              }
              $Campos_Erros['style_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 13 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['style_']) || !is_array($this->NM_ajax_info['errList']['style_']))
              {
                  $this->NM_ajax_info['errList']['style_'] = array();
              }
              $this->NM_ajax_info['errList']['style_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 13 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_style_

    function ValidateField_descrip_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->descrip_) > 17) 
          { 
              $Campos_Crit .= "DESCRIP " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 17 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['descrip_']))
              {
                  $Campos_Erros['descrip_'] = array();
              }
              $Campos_Erros['descrip_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 17 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['descrip_']) || !is_array($this->NM_ajax_info['errList']['descrip_']))
              {
                  $this->NM_ajax_info['errList']['descrip_'] = array();
              }
              $this->NM_ajax_info['errList']['descrip_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 17 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_descrip_

    function ValidateField_width_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->width_) > 8) 
          { 
              $Campos_Crit .= "WIDTH " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 8 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['width_']))
              {
                  $Campos_Erros['width_'] = array();
              }
              $Campos_Erros['width_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 8 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['width_']) || !is_array($this->NM_ajax_info['errList']['width_']))
              {
                  $this->NM_ajax_info['errList']['width_'] = array();
              }
              $this->NM_ajax_info['errList']['width_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 8 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_width_

    function ValidateField_color_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->color_) > 16) 
          { 
              $Campos_Crit .= "COLOR " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 16 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['color_']))
              {
                  $Campos_Erros['color_'] = array();
              }
              $Campos_Erros['color_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 16 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['color_']) || !is_array($this->NM_ajax_info['errList']['color_']))
              {
                  $this->NM_ajax_info['errList']['color_'] = array();
              }
              $this->NM_ajax_info['errList']['color_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 16 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_color_

    function ValidateField_cust_order_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->cust_order_) > 15) 
          { 
              $Campos_Crit .= "CUST ORDER " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 15 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['cust_order_']))
              {
                  $Campos_Erros['cust_order_'] = array();
              }
              $Campos_Erros['cust_order_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 15 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['cust_order_']) || !is_array($this->NM_ajax_info['errList']['cust_order_']))
              {
                  $this->NM_ajax_info['errList']['cust_order_'] = array();
              }
              $this->NM_ajax_info['errList']['cust_order_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 15 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_cust_order_

    function ValidateField_our_order_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->our_order_) > 8) 
          { 
              $Campos_Crit .= "OUR ORDER " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 8 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['our_order_']))
              {
                  $Campos_Erros['our_order_'] = array();
              }
              $Campos_Erros['our_order_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 8 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['our_order_']) || !is_array($this->NM_ajax_info['errList']['our_order_']))
              {
                  $this->NM_ajax_info['errList']['our_order_'] = array();
              }
              $this->NM_ajax_info['errList']['our_order_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 8 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_our_order_

    function ValidateField_dye_order_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->dye_order_) > 5) 
          { 
              $Campos_Crit .= "DYE ORDER " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 5 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['dye_order_']))
              {
                  $Campos_Erros['dye_order_'] = array();
              }
              $Campos_Erros['dye_order_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 5 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['dye_order_']) || !is_array($this->NM_ajax_info['errList']['dye_order_']))
              {
                  $this->NM_ajax_info['errList']['dye_order_'] = array();
              }
              $this->NM_ajax_info['errList']['dye_order_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 5 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_dye_order_

    function ValidateField_dye_lot_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->dye_lot_) > 8) 
          { 
              $Campos_Crit .= "DYE LOT " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 8 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['dye_lot_']))
              {
                  $Campos_Erros['dye_lot_'] = array();
              }
              $Campos_Erros['dye_lot_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 8 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['dye_lot_']) || !is_array($this->NM_ajax_info['errList']['dye_lot_']))
              {
                  $this->NM_ajax_info['errList']['dye_lot_'] = array();
              }
              $this->NM_ajax_info['errList']['dye_lot_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 8 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_dye_lot_

    function ValidateField_price_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->price_ == "")  
      { 
          $this->price_ = 0;
          $this->sc_force_zero[] = 'price_';
      } 
      if (!empty($this->field_config['price_']['symbol_dec']))
      {
          nm_limpa_valor($this->price_, $this->field_config['price_']['symbol_dec'], $this->field_config['price_']['symbol_grp']) ; 
          if ('.' == substr($this->price_, 0, 1))
          {
              if ('' == str_replace('0', '', substr($this->price_, 1)))
              {
                  $this->price_ = '';
              }
              else
              {
                  $this->price_ = '0' . $this->price_;
              }
          }
      }
      if ($this->nmgp_opcao != "excluir") 
      { 
          if ($this->price_ != '')  
          { 
              $iTestSize = 10;
              if (strlen($this->price_) > $iTestSize)  
              { 
                  $Campos_Crit .= "PRICE: " . $this->Ini->Nm_lang['lang_errm_size']; 
                  if (!isset($Campos_Erros['price_']))
                  {
                      $Campos_Erros['price_'] = array();
                  }
                  $Campos_Erros['price_'][] = $this->Ini->Nm_lang['lang_errm_size'];
                  if (!isset($this->NM_ajax_info['errList']['price_']) || !is_array($this->NM_ajax_info['errList']['price_']))
                  {
                      $this->NM_ajax_info['errList']['price_'] = array();
                  }
                  $this->NM_ajax_info['errList']['price_'][] = $this->Ini->Nm_lang['lang_errm_size'];
              } 
              if ($teste_validade->Valor($this->price_, 6, 3, 0, 0, "N") == false)  
              { 
                  $Campos_Crit .= "PRICE; " ; 
                  if (!isset($Campos_Erros['price_']))
                  {
                      $Campos_Erros['price_'] = array();
                  }
                  $Campos_Erros['price_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
                  if (!isset($this->NM_ajax_info['errList']['price_']) || !is_array($this->NM_ajax_info['errList']['price_']))
                  {
                      $this->NM_ajax_info['errList']['price_'] = array();
                  }
                  $this->NM_ajax_info['errList']['price_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
              } 
          } 
      } 
    } // ValidateField_price_

    function ValidateField_amount_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->amount_ == "")  
      { 
          $this->amount_ = 0;
          $this->sc_force_zero[] = 'amount_';
      } 
      if (!empty($this->field_config['amount_']['symbol_dec']))
      {
          $this->sc_remove_currency($this->amount_, $this->field_config['amount_']['symbol_dec'], $this->field_config['amount_']['symbol_grp'], $this->field_config['amount_']['symbol_mon']); 
          nm_limpa_valor($this->amount_, $this->field_config['amount_']['symbol_dec'], $this->field_config['amount_']['symbol_grp']) ; 
          if ('.' == substr($this->amount_, 0, 1))
          {
              if ('' == str_replace('0', '', substr($this->amount_, 1)))
              {
                  $this->amount_ = '';
              }
              else
              {
                  $this->amount_ = '0' . $this->amount_;
              }
          }
      }
      if ($this->nmgp_opcao != "excluir") 
      { 
          if ($this->amount_ != '')  
          { 
              $iTestSize = 12;
              if (strlen($this->amount_) > $iTestSize)  
              { 
                  $Campos_Crit .= "AMOUNT: " . $this->Ini->Nm_lang['lang_errm_size']; 
                  if (!isset($Campos_Erros['amount_']))
                  {
                      $Campos_Erros['amount_'] = array();
                  }
                  $Campos_Erros['amount_'][] = $this->Ini->Nm_lang['lang_errm_size'];
                  if (!isset($this->NM_ajax_info['errList']['amount_']) || !is_array($this->NM_ajax_info['errList']['amount_']))
                  {
                      $this->NM_ajax_info['errList']['amount_'] = array();
                  }
                  $this->NM_ajax_info['errList']['amount_'][] = $this->Ini->Nm_lang['lang_errm_size'];
              } 
              if ($teste_validade->Valor($this->amount_, 9, 2, 0, 0, "N") == false)  
              { 
                  $Campos_Crit .= "AMOUNT; " ; 
                  if (!isset($Campos_Erros['amount_']))
                  {
                      $Campos_Erros['amount_'] = array();
                  }
                  $Campos_Erros['amount_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
                  if (!isset($this->NM_ajax_info['errList']['amount_']) || !is_array($this->NM_ajax_info['errList']['amount_']))
                  {
                      $this->NM_ajax_info['errList']['amount_'] = array();
                  }
                  $this->NM_ajax_info['errList']['amount_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
              } 
          } 
      } 
    } // ValidateField_amount_

    function ValidateField_cases_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->cases_) > 3) 
          { 
              $Campos_Crit .= "CASES " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 3 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['cases_']))
              {
                  $Campos_Erros['cases_'] = array();
              }
              $Campos_Erros['cases_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 3 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['cases_']) || !is_array($this->NM_ajax_info['errList']['cases_']))
              {
                  $this->NM_ajax_info['errList']['cases_'] = array();
              }
              $this->NM_ajax_info['errList']['cases_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 3 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_cases_

    function ValidateField_adate_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      nm_limpa_data($this->adate_, $this->field_config['adate_']['date_sep']) ; 
      $trab_dt_min = ""; 
      $trab_dt_max = ""; 
      if ($this->nmgp_opcao != "excluir") 
      { 
          $guarda_datahora = $this->field_config['adate_']['date_format']; 
          if (false !== strpos($guarda_datahora, ';')) $this->field_config['adate_']['date_format'] = substr($guarda_datahora, 0, strpos($guarda_datahora, ';'));
          $Format_Data = $this->field_config['adate_']['date_format']; 
          nm_limpa_data($Format_Data, $this->field_config['adate_']['date_sep']) ; 
          if (trim($this->adate_) != "")  
          { 
              if ($teste_validade->Data($this->adate_, $Format_Data, $trab_dt_min, $trab_dt_max) == false)  
              { 
                  $Campos_Crit .= "ADATE; " ; 
                  if (!isset($Campos_Erros['adate_']))
                  {
                      $Campos_Erros['adate_'] = array();
                  }
                  $Campos_Erros['adate_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
                  if (!isset($this->NM_ajax_info['errList']['adate_']) || !is_array($this->NM_ajax_info['errList']['adate_']))
                  {
                      $this->NM_ajax_info['errList']['adate_'] = array();
                  }
                  $this->NM_ajax_info['errList']['adate_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
              } 
          } 
          $this->field_config['adate_']['date_format'] = $guarda_datahora; 
       } 
    } // ValidateField_adate_

    function ValidateField_edate_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      nm_limpa_data($this->edate_, $this->field_config['edate_']['date_sep']) ; 
      $trab_dt_min = ""; 
      $trab_dt_max = ""; 
      if ($this->nmgp_opcao != "excluir") 
      { 
          $guarda_datahora = $this->field_config['edate_']['date_format']; 
          if (false !== strpos($guarda_datahora, ';')) $this->field_config['edate_']['date_format'] = substr($guarda_datahora, 0, strpos($guarda_datahora, ';'));
          $Format_Data = $this->field_config['edate_']['date_format']; 
          nm_limpa_data($Format_Data, $this->field_config['edate_']['date_sep']) ; 
          if (trim($this->edate_) != "")  
          { 
              if ($teste_validade->Data($this->edate_, $Format_Data, $trab_dt_min, $trab_dt_max) == false)  
              { 
                  $Campos_Crit .= "EDATE; " ; 
                  if (!isset($Campos_Erros['edate_']))
                  {
                      $Campos_Erros['edate_'] = array();
                  }
                  $Campos_Erros['edate_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
                  if (!isset($this->NM_ajax_info['errList']['edate_']) || !is_array($this->NM_ajax_info['errList']['edate_']))
                  {
                      $this->NM_ajax_info['errList']['edate_'] = array();
                  }
                  $this->NM_ajax_info['errList']['edate_'][] = "" . $this->Ini->Nm_lang['lang_errm_ajax_data'] . "";
              } 
          } 
          $this->field_config['edate_']['date_format'] = $guarda_datahora; 
       } 
    } // ValidateField_edate_

    function ValidateField_smit_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->smit_) > 10) 
          { 
              $Campos_Crit .= "SMIT " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 10 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['smit_']))
              {
                  $Campos_Erros['smit_'] = array();
              }
              $Campos_Erros['smit_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 10 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['smit_']) || !is_array($this->NM_ajax_info['errList']['smit_']))
              {
                  $this->NM_ajax_info['errList']['smit_'] = array();
              }
              $this->NM_ajax_info['errList']['smit_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 10 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_smit_

    function ValidateField_memo_(&$Campos_Crit, &$Campos_Falta, &$Campos_Erros)
    {
        global $teste_validade;
      if ($this->nmgp_opcao != "excluir") 
      { 
          if (NM_utf8_strlen($this->memo_) > 32767) 
          { 
              $Campos_Crit .= "MEMO " . $this->Ini->Nm_lang['lang_errm_mxch'] . " 32767 " . $this->Ini->Nm_lang['lang_errm_nchr']; 
              if (!isset($Campos_Erros['memo_']))
              {
                  $Campos_Erros['memo_'] = array();
              }
              $Campos_Erros['memo_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 32767 " . $this->Ini->Nm_lang['lang_errm_nchr'];
              if (!isset($this->NM_ajax_info['errList']['memo_']) || !is_array($this->NM_ajax_info['errList']['memo_']))
              {
                  $this->NM_ajax_info['errList']['memo_'] = array();
              }
              $this->NM_ajax_info['errList']['memo_'][] = $this->Ini->Nm_lang['lang_errm_mxch'] . " 32767 " . $this->Ini->Nm_lang['lang_errm_nchr'];
          } 
      } 
    } // ValidateField_memo_

    function removeDuplicateDttmError($aErrDate, &$aErrTime)
    {
        if (empty($aErrDate) || empty($aErrTime))
        {
            return;
        }

        foreach ($aErrDate as $sErrDate)
        {
            foreach ($aErrTime as $iErrTime => $sErrTime)
            {
                if ($sErrDate == $sErrTime)
                {
                    unset($aErrTime[$iErrTime]);
                }
            }
        }
    } // removeDuplicateDttmError

   function nm_guardar_campos()
   {
    global
           $sc_seq_vert;
    $this->nmgp_dados_form['id2_'] = $this->id2_;
    $this->nmgp_dados_form['date_'] = $this->date_;
    $this->nmgp_dados_form['bcode_'] = $this->bcode_;
    $this->nmgp_dados_form['invoice_'] = $this->invoice_;
    $this->nmgp_dados_form['item_'] = $this->item_;
    $this->nmgp_dados_form['lin_'] = $this->lin_;
    $this->nmgp_dados_form['sq_'] = $this->sq_;
    $this->nmgp_dados_form['unit_'] = $this->unit_;
    $this->nmgp_dados_form['style_'] = $this->style_;
    $this->nmgp_dados_form['descrip_'] = $this->descrip_;
    $this->nmgp_dados_form['width_'] = $this->width_;
    $this->nmgp_dados_form['color_'] = $this->color_;
    $this->nmgp_dados_form['cust_order_'] = $this->cust_order_;
    $this->nmgp_dados_form['our_order_'] = $this->our_order_;
    $this->nmgp_dados_form['dye_order_'] = $this->dye_order_;
    $this->nmgp_dados_form['dye_lot_'] = $this->dye_lot_;
    $this->nmgp_dados_form['price_'] = $this->price_;
    $this->nmgp_dados_form['amount_'] = $this->amount_;
    $this->nmgp_dados_form['cases_'] = $this->cases_;
    $this->nmgp_dados_form['adate_'] = $this->adate_;
    $this->nmgp_dados_form['edate_'] = $this->edate_;
    $this->nmgp_dados_form['smit_'] = $this->smit_;
    $this->nmgp_dados_form['memo_'] = $this->memo_;
    $this->nmgp_dados_form['cost_'] = $this->cost_;
    $this->nmgp_dados_form['cost_yd_'] = $this->cost_yd_;
    $this->nmgp_dados_form['gp_'] = $this->gp_;
    $this->nmgp_dados_form['gp_yd_'] = $this->gp_yd_;
    $this->nmgp_dados_form['pc_'] = $this->pc_;
    $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_form'][$sc_seq_vert] = $this->nmgp_dados_form;
   }
   function nm_tira_formatacao()
   {
      global $nm_form_submit;
         $this->formatado = false;
      nm_limpa_numero($this->id2_, $this->field_config['id2_']['symbol_grp']) ; 
      nm_limpa_data($this->date_, $this->field_config['date_']['date_sep']) ; 
      nm_limpa_numero($this->item_, $this->field_config['item_']['symbol_grp']) ; 
      if (!empty($this->field_config['lin_']['symbol_dec']))
      {
         nm_limpa_valor($this->lin_, $this->field_config['lin_']['symbol_dec'], $this->field_config['lin_']['symbol_grp']);
      }
      if (!empty($this->field_config['sq_']['symbol_dec']))
      {
         nm_limpa_valor($this->sq_, $this->field_config['sq_']['symbol_dec'], $this->field_config['sq_']['symbol_grp']);
      }
      if (!empty($this->field_config['price_']['symbol_dec']))
      {
         nm_limpa_valor($this->price_, $this->field_config['price_']['symbol_dec'], $this->field_config['price_']['symbol_grp']);
      }
      if (!empty($this->field_config['amount_']['symbol_dec']))
      {
         $this->sc_remove_currency($this->amount_, $this->field_config['amount_']['symbol_dec'], $this->field_config['amount_']['symbol_grp'], $this->field_config['amount_']['symbol_mon']);
         nm_limpa_valor($this->amount_, $this->field_config['amount_']['symbol_dec'], $this->field_config['amount_']['symbol_grp']);
      }
      nm_limpa_data($this->adate_, $this->field_config['adate_']['date_sep']) ; 
      nm_limpa_data($this->edate_, $this->field_config['edate_']['date_sep']) ; 
      if (!empty($this->field_config['cost_']['symbol_dec']))
      {
         $this->sc_remove_currency($this->cost_, $this->field_config['cost_']['symbol_dec'], $this->field_config['cost_']['symbol_grp'], $this->field_config['cost_']['symbol_mon']);
         nm_limpa_valor($this->cost_, $this->field_config['cost_']['symbol_dec'], $this->field_config['cost_']['symbol_grp']);
      }
      if (!empty($this->field_config['cost_yd_']['symbol_dec']))
      {
         nm_limpa_valor($this->cost_yd_, $this->field_config['cost_yd_']['symbol_dec'], $this->field_config['cost_yd_']['symbol_grp']);
      }
      if (!empty($this->field_config['gp_']['symbol_dec']))
      {
         $this->sc_remove_currency($this->gp_, $this->field_config['gp_']['symbol_dec'], $this->field_config['gp_']['symbol_grp'], $this->field_config['gp_']['symbol_mon']);
         nm_limpa_valor($this->gp_, $this->field_config['gp_']['symbol_dec'], $this->field_config['gp_']['symbol_grp']);
      }
      if (!empty($this->field_config['gp_yd_']['symbol_dec']))
      {
         nm_limpa_valor($this->gp_yd_, $this->field_config['gp_yd_']['symbol_dec'], $this->field_config['gp_yd_']['symbol_grp']);
      }
      if (!empty($this->field_config['pc_']['symbol_dec']))
      {
         nm_limpa_valor($this->pc_, $this->field_config['pc_']['symbol_dec'], $this->field_config['pc_']['symbol_grp']);
      }
   }
   function sc_add_currency(&$value, $symbol, $pos)
   {
       if ('' == $value)
       {
           return;
       }
       $value = (1 == $pos || 3 == $pos) ? $symbol . ' ' . $value : $value . ' ' . $symbol;
   }
   function sc_remove_currency(&$value, $symbol_dec, $symbol_tho, $symbol_mon)
   {
       $value = preg_replace('~&#x0*([0-9a-f]+);~ei', '', $value);
       $sNew  = str_replace($symbol_mon, '', $value);
       if ($sNew != $value)
       {
           $value = str_replace(' ', '', $sNew);
           return;
       }
       $aTest = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '-', $symbol_dec, $symbol_tho);
       $sNew  = '';
       for ($i = 0; $i < strlen($value); $i++)
       {
           if ($this->sc_test_currency_char($value[$i], $aTest))
           {
               $sNew .= $value[$i];
           }
       }
       $value = $sNew;
   }
   function sc_test_currency_char($char, $test)
   {
       $found = false;
       foreach ($test as $test_char)
       {
           if ($char === $test_char)
           {
               $found = true;
           }
       }
       return $found;
   }
   function nm_clear_val($Nome_Campo)
   {
      if ($Nome_Campo == "id2_")
      {
          nm_limpa_numero($this->id2_, $this->field_config['id2_']['symbol_grp']) ; 
      }
      if ($Nome_Campo == "item_")
      {
          nm_limpa_numero($this->item_, $this->field_config['item_']['symbol_grp']) ; 
      }
      if ($Nome_Campo == "lin_")
      {
          if (!empty($this->field_config['lin_']['symbol_dec']))
          {
             nm_limpa_valor($this->lin_, $this->field_config['lin_']['symbol_dec'], $this->field_config['lin_']['symbol_grp']);
          }
      }
      if ($Nome_Campo == "sq_")
      {
          if (!empty($this->field_config['sq_']['symbol_dec']))
          {
             nm_limpa_valor($this->sq_, $this->field_config['sq_']['symbol_dec'], $this->field_config['sq_']['symbol_grp']);
          }
      }
      if ($Nome_Campo == "price_")
      {
          if (!empty($this->field_config['price_']['symbol_dec']))
          {
             nm_limpa_valor($this->price_, $this->field_config['price_']['symbol_dec'], $this->field_config['price_']['symbol_grp']);
          }
      }
      if ($Nome_Campo == "amount_")
      {
          if (!empty($this->field_config['amount_']['symbol_dec']))
          {
             $this->sc_remove_currency($this->amount_, $this->field_config['amount_']['symbol_dec'], $this->field_config['amount_']['symbol_grp'], $this->field_config['amount_']['symbol_mon']);
             nm_limpa_valor($this->amount_, $this->field_config['amount_']['symbol_dec'], $this->field_config['amount_']['symbol_grp']);
          }
      }
      if ($Nome_Campo == "cost_")
      {
          if (!empty($this->field_config['cost_']['symbol_dec']))
          {
             $this->sc_remove_currency($this->cost_, $this->field_config['cost_']['symbol_dec'], $this->field_config['cost_']['symbol_grp'], $this->field_config['cost_']['symbol_mon']);
             nm_limpa_valor($this->cost_, $this->field_config['cost_']['symbol_dec'], $this->field_config['cost_']['symbol_grp']);
          }
      }
      if ($Nome_Campo == "cost_yd_")
      {
          if (!empty($this->field_config['cost_yd_']['symbol_dec']))
          {
             nm_limpa_valor($this->cost_yd_, $this->field_config['cost_yd_']['symbol_dec'], $this->field_config['cost_yd_']['symbol_grp']);
          }
      }
      if ($Nome_Campo == "gp_")
      {
          if (!empty($this->field_config['gp_']['symbol_dec']))
          {
             $this->sc_remove_currency($this->gp_, $this->field_config['gp_']['symbol_dec'], $this->field_config['gp_']['symbol_grp'], $this->field_config['gp_']['symbol_mon']);
             nm_limpa_valor($this->gp_, $this->field_config['gp_']['symbol_dec'], $this->field_config['gp_']['symbol_grp']);
          }
      }
      if ($Nome_Campo == "gp_yd_")
      {
          if (!empty($this->field_config['gp_yd_']['symbol_dec']))
          {
             nm_limpa_valor($this->gp_yd_, $this->field_config['gp_yd_']['symbol_dec'], $this->field_config['gp_yd_']['symbol_grp']);
          }
      }
      if ($Nome_Campo == "pc_")
      {
          if (!empty($this->field_config['pc_']['symbol_dec']))
          {
             nm_limpa_valor($this->pc_, $this->field_config['pc_']['symbol_dec'], $this->field_config['pc_']['symbol_grp']);
          }
      }
   }
   function nm_formatar_campos($format_fields = array())
   {
      global $nm_form_submit;
      if (!empty($this->id2_) || (!empty($format_fields) && isset($format_fields['id2_'])))
      {
          nmgp_Form_Num_Val($this->id2_, $this->field_config['id2_']['symbol_grp'], $this->field_config['id2_']['symbol_dec'], "0", "S", "", "", "", "-", $this->field_config['id2_']['symbol_fmt']) ; 
      }
      if ((!empty($this->date_) && 'null' != $this->date_) || (!empty($format_fields) && isset($format_fields['date_'])))
      {
          nm_volta_data($this->date_, $this->field_config['date_']['date_format']) ; 
          nmgp_Form_Datas($this->date_, $this->field_config['date_']['date_format'], $this->field_config['date_']['date_sep']) ;  
      }
      elseif ('null' == $this->date_ || '' == $this->date_)
      {
          $this->date_ = '';
      }
      if (!empty($this->item_) || (!empty($format_fields) && isset($format_fields['item_'])))
      {
          nmgp_Form_Num_Val($this->item_, $this->field_config['item_']['symbol_grp'], $this->field_config['item_']['symbol_dec'], "0", "S", "", "", "", "-", $this->field_config['item_']['symbol_fmt']) ; 
      }
      if (!empty($this->lin_) || (!empty($format_fields) && isset($format_fields['lin_'])))
      {
          nmgp_Form_Num_Val($this->lin_, $this->field_config['lin_']['symbol_grp'], $this->field_config['lin_']['symbol_dec'], "3", "S", "", "", "", "-", $this->field_config['lin_']['symbol_fmt']) ; 
      }
      if (!empty($this->sq_) || (!empty($format_fields) && isset($format_fields['sq_'])))
      {
          nmgp_Form_Num_Val($this->sq_, $this->field_config['sq_']['symbol_grp'], $this->field_config['sq_']['symbol_dec'], "3", "S", "", "", "", "-", $this->field_config['sq_']['symbol_fmt']) ; 
      }
      if (!empty($this->price_) || (!empty($format_fields) && isset($format_fields['price_'])))
      {
          nmgp_Form_Num_Val($this->price_, $this->field_config['price_']['symbol_grp'], $this->field_config['price_']['symbol_dec'], "3", "S", "", "", "", "-", $this->field_config['price_']['symbol_fmt']) ; 
      }
      if (!empty($this->amount_) || (!empty($format_fields) && isset($format_fields['amount_'])))
      {
          nmgp_Form_Num_Val($this->amount_, $this->field_config['amount_']['symbol_grp'], $this->field_config['amount_']['symbol_dec'], "2", "S", "", "", "", "-", $this->field_config['amount_']['symbol_fmt']) ; 
          $sMonSymb = $this->field_config['amount_']['symbol_mon'];
          $this->sc_add_currency($this->amount_, $sMonSymb, $this->field_config['amount_']['format_pos']); 
      }
      if ((!empty($this->adate_) && 'null' != $this->adate_) || (!empty($format_fields) && isset($format_fields['adate_'])))
      {
          nm_volta_data($this->adate_, $this->field_config['adate_']['date_format']) ; 
          nmgp_Form_Datas($this->adate_, $this->field_config['adate_']['date_format'], $this->field_config['adate_']['date_sep']) ;  
      }
      elseif ('null' == $this->adate_ || '' == $this->adate_)
      {
          $this->adate_ = '';
      }
      if ((!empty($this->edate_) && 'null' != $this->edate_) || (!empty($format_fields) && isset($format_fields['edate_'])))
      {
          nm_volta_data($this->edate_, $this->field_config['edate_']['date_format']) ; 
          nmgp_Form_Datas($this->edate_, $this->field_config['edate_']['date_format'], $this->field_config['edate_']['date_sep']) ;  
      }
      elseif ('null' == $this->edate_ || '' == $this->edate_)
      {
          $this->edate_ = '';
      }
   }
   function nm_gera_mask(&$nm_campo, $nm_mask)
   { 
      $trab_campo = $nm_campo;
      $trab_mask  = $nm_mask;
      $tam_campo  = strlen($nm_campo);
      $trab_saida = "";

      if (false !== strpos($nm_mask, '9') || false !== strpos($nm_mask, 'a') || false !== strpos($nm_mask, '*'))
      {
          $new_campo = '';
          $a_mask_ord  = array();
          $i_mask_size = -1;

          foreach (explode(';', $nm_mask) as $str_mask)
          {
              $a_mask_ord[ $this->nm_conta_mask_chars($str_mask) ] = $str_mask;
          }
          ksort($a_mask_ord);

          foreach ($a_mask_ord as $i_size => $s_mask)
          {
              if (-1 == $i_mask_size)
              {
                  $i_mask_size = $i_size;
              }
              elseif (strlen($nm_campo) >= $i_size && strlen($nm_campo) > $i_mask_size)
              {
                  $i_mask_size = $i_size;
              }
          }
          $nm_mask = $a_mask_ord[$i_mask_size];

          for ($i = 0; $i < strlen($nm_mask); $i++)
          {
              $test_mask = substr($nm_mask, $i, 1);
              
              if ('9' == $test_mask || 'a' == $test_mask || '*' == $test_mask)
              {
                  $new_campo .= substr($nm_campo, 0, 1);
                  $nm_campo   = substr($nm_campo, 1);
              }
              else
              {
                  $new_campo .= $test_mask;
              }
          }

                  $nm_campo = $new_campo;

          return;
      }

      $mask_num = false;
      for ($x=0; $x < strlen($trab_mask); $x++)
      {
          if (substr($trab_mask, $x, 1) == "#")
          {
              $mask_num = true;
              break;
          }
      }
      if ($mask_num )
      {
          $ver_duas = explode(";", $trab_mask);
          if (isset($ver_duas[1]) && !empty($ver_duas[1]))
          {
              $cont1 = count(explode("#", $ver_duas[0])) - 1;
              $cont2 = count(explode("#", $ver_duas[1])) - 1;
              if ($cont1 < $cont2 && $tam_campo <= $cont2 && $tam_campo > $cont1)
              {
                  $trab_mask = $ver_duas[1];
              }
              elseif ($cont1 > $cont2 && $tam_campo <= $cont2)
              {
                  $trab_mask = $ver_duas[1];
              }
              else
              {
                  $trab_mask = $ver_duas[0];
              }
          }
          $tam_mask = strlen($trab_mask);
          $xdados = 0;
          for ($x=0; $x < $tam_mask; $x++)
          {
              if (substr($trab_mask, $x, 1) == "#" && $xdados < $tam_campo)
              {
                  $trab_saida .= substr($trab_campo, $xdados, 1);
                  $xdados++;
              }
              elseif ($xdados < $tam_campo)
              {
                  $trab_saida .= substr($trab_mask, $x, 1);
              }
          }
          if ($xdados < $tam_campo)
          {
              $trab_saida .= substr($trab_campo, $xdados);
          }
          $nm_campo = $trab_saida;
          return;
      }
      for ($ix = strlen($trab_mask); $ix > 0; $ix--)
      {
           $char_mask = substr($trab_mask, $ix - 1, 1);
           if ($char_mask != "x" && $char_mask != "z")
           {
               $trab_saida = $char_mask . $trab_saida;
           }
           else
           {
               if ($tam_campo != 0)
               {
                   $trab_saida = substr($trab_campo, $tam_campo - 1, 1) . $trab_saida;
                   $tam_campo--;
               }
               else
               {
                   $trab_saida = "0" . $trab_saida;
               }
           }
      }
      if ($tam_campo != 0)
      {
          $trab_saida = substr($trab_campo, 0, $tam_campo) . $trab_saida;
          $trab_mask  = str_repeat("z", $tam_campo) . $trab_mask;
      }
   
      $iz = 0; 
      for ($ix = 0; $ix < strlen($trab_mask); $ix++)
      {
           $char_mask = substr($trab_mask, $ix, 1);
           if ($char_mask != "x" && $char_mask != "z")
           {
               if ($char_mask == "." || $char_mask == ",")
               {
                   $trab_saida = substr($trab_saida, 0, $iz) . substr($trab_saida, $iz + 1);
               }
               else
               {
                   $iz++;
               }
           }
           elseif ($char_mask == "x" || substr($trab_saida, $iz, 1) != "0")
           {
               $ix = strlen($trab_mask) + 1;
           }
           else
           {
               $trab_saida = substr($trab_saida, 0, $iz) . substr($trab_saida, $iz + 1);
           }
      }
      $nm_campo = $trab_saida;
   } 
   function nm_conta_mask_chars($sMask)
   {
       $iLength = 0;

       for ($i = 0; $i < strlen($sMask); $i++)
       {
           if (in_array($sMask[$i], array('9', 'a', '*')))
           {
               $iLength++;
           }
       }

       return $iLength;
   }
   function nm_tira_mask(&$nm_campo, $nm_mask, $nm_chars = '')
   { 
      $mask_dados = $nm_campo;
      $trab_mask  = $nm_mask;
      $tam_campo  = strlen($nm_campo);
      $tam_mask   = strlen($nm_mask);
      $trab_saida = "";

      if (false !== strpos($nm_mask, '9') || false !== strpos($nm_mask, 'a') || false !== strpos($nm_mask, '*'))
      {
          $raw_campo = $this->sc_clear_mask($nm_campo, $nm_chars);
          $raw_mask  = $this->sc_clear_mask($nm_mask, $nm_chars);
          $new_campo = '';

          $test_mask = substr($raw_mask, 0, 1);
          $raw_mask  = substr($raw_mask, 1);

          while ('' != $raw_campo)
          {
              $test_val  = substr($raw_campo, 0, 1);
              $raw_campo = substr($raw_campo, 1);
              $ord       = ord($test_val);
              $found     = false;

              switch ($test_mask)
              {
                  case '9':
                      if (48 <= $ord && 57 >= $ord)
                      {
                          $new_campo .= $test_val;
                          $found      = true;
                      }
                      break;

                  case 'a':
                      if ((65 <= $ord && 90 >= $ord) || (97 <= $ord && 122 >= $ord))
                      {
                          $new_campo .= $test_val;
                          $found      = true;
                      }
                      break;

                  case '*':
                      if ((48 <= $ord && 57 >= $ord) || (65 <= $ord && 90 >= $ord) || (97 <= $ord && 122 >= $ord))
                      {
                          $new_campo .= $test_val;
                          $found      = true;
                      }
                      break;
              }

              if ($found)
              {
                  $test_mask = substr($raw_mask, 0, 1);
                  $raw_mask  = substr($raw_mask, 1);
              }
          }

          $nm_campo = $new_campo;

          return;
      }

      $mask_num = false;
      for ($x=0; $x < strlen($trab_mask); $x++)
      {
          if (substr($trab_mask, $x, 1) == "#")
          {
              $mask_num = true;
              break;
          }
      }
      if ($mask_num )
      {
          for ($x=0; $x < strlen($mask_dados); $x++)
          {
              if (is_numeric(substr($mask_dados, $x, 1)))
              {
                  $trab_saida .= substr($mask_dados, $x, 1);
              }
          }
          $nm_campo = $trab_saida;
          return;
      }
      if ($tam_mask > $tam_campo)
      {
         $mask_desfaz = "";
         for ($mask_ind = 0; $tam_mask > $tam_campo; $mask_ind++)
         {
              $mask_char = substr($trab_mask, $mask_ind, 1);
              if ($mask_char == "z")
              {
                  $tam_mask--;
              }
              else
              {
                  $mask_desfaz .= $mask_char;
              }
              if ($mask_ind == $tam_campo)
              {
                  $tam_mask = $tam_campo;
              }
         }
         $trab_mask = $mask_desfaz . substr($trab_mask, $mask_ind);
      }
      $mask_saida = "";
      for ($mask_ind = strlen($trab_mask); $mask_ind > 0; $mask_ind--)
      {
          $mask_char = substr($trab_mask, $mask_ind - 1, 1);
          if ($mask_char == "x" || $mask_char == "z")
          {
              if ($tam_campo > 0)
              {
                  $mask_saida = substr($mask_dados, $tam_campo - 1, 1) . $mask_saida;
              }
          }
          else
          {
              if ($mask_char != substr($mask_dados, $tam_campo - 1, 1) && $tam_campo > 0)
              {
                  $mask_saida = substr($mask_dados, $tam_campo - 1, 1) . $mask_saida;
                  $mask_ind--;
              }
          }
          $tam_campo--;
      }
      if ($tam_campo > 0)
      {
         $mask_saida = substr($mask_dados, 0, $tam_campo) . $mask_saida;
      }
      $nm_campo = $mask_saida;
   }

   function sc_clear_mask($value, $chars)
   {
       $new = '';

       for ($i = 0; $i < strlen($value); $i++)
       {
           if (false === strpos($chars, $value[$i]))
           {
               $new .= $value[$i];
           }
       }

       return $new;
   }
//
   function nm_limpa_alfa(&$str)
   {
       if (get_magic_quotes_gpc())
       {
           if (is_array($str))
           {
               $x = 0;
               foreach ($str as $cada_str)
               {
                   $str[$x] = stripslashes($str[$x]);
                   $x++;
               }
           }
           else
           {
               $str = stripslashes($str);
           }
       }
   }
//
//-- 
   function nm_converte_datas($use_null = true)
   {
       $guarda_format_hora = $this->field_config['date_']['date_format'];
      if ($this->date_ != "")  
      { 
          nm_conv_data($this->date_, $this->field_config['date_']['date_format']) ; 
          $this->date__hora = "00:00:00:000" ; 
          if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres))
          {
              $this->date__hora = substr($this->date__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mysql))
          {
              $this->date__hora = substr($this->date__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
          {
              $this->date__hora = substr($this->date__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
          {
              $this->date__hora = substr($this->date__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_db2))
          {
              $this->date__hora = substr($this->date__hora, 0, -4);
          }
      } 
      if ($this->date_ == "" && $use_null)  
      { 
          $this->date_ = "null" ; 
      } 
       $this->field_config['date_']['date_format'] = $guarda_format_hora;
       $guarda_format_hora = $this->field_config['adate_']['date_format'];
      if ($this->adate_ != "")  
      { 
          nm_conv_data($this->adate_, $this->field_config['adate_']['date_format']) ; 
          $this->adate__hora = "00:00:00:000" ; 
          if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres))
          {
              $this->adate__hora = substr($this->adate__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mysql))
          {
              $this->adate__hora = substr($this->adate__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
          {
              $this->adate__hora = substr($this->adate__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
          {
              $this->adate__hora = substr($this->adate__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_db2))
          {
              $this->adate__hora = substr($this->adate__hora, 0, -4);
          }
      } 
      if ($this->adate_ == "" && $use_null)  
      { 
          $this->adate_ = "null" ; 
      } 
       $this->field_config['adate_']['date_format'] = $guarda_format_hora;
       $guarda_format_hora = $this->field_config['edate_']['date_format'];
      if ($this->edate_ != "")  
      { 
          nm_conv_data($this->edate_, $this->field_config['edate_']['date_format']) ; 
          $this->edate__hora = "00:00:00:000" ; 
          if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres))
          {
              $this->edate__hora = substr($this->edate__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mysql))
          {
              $this->edate__hora = substr($this->edate__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
          {
              $this->edate__hora = substr($this->edate__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
          {
              $this->edate__hora = substr($this->edate__hora, 0, -4);
          }
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_db2))
          {
              $this->edate__hora = substr($this->edate__hora, 0, -4);
          }
      } 
      if ($this->edate_ == "" && $use_null)  
      { 
          $this->edate_ = "null" ; 
      } 
       $this->field_config['edate_']['date_format'] = $guarda_format_hora;
   }
   function nm_conv_data_db($dt_in, $form_in, $form_out, $replaces = array())
   {
       $dt_out = $dt_in;
       if (strtoupper($form_in) == "DB_FORMAT")
       {
           if ($dt_out == "null" || $dt_out == "")
           {
               $dt_out = "";
               return $dt_out;
           }
           $form_in = "AAAA-MM-DD";
       }
       if (strtoupper($form_out) == "DB_FORMAT")
       {
           if (empty($dt_out))
           {
               $dt_out = "null";
               return $dt_out;
           }
           $form_out = "AAAA-MM-DD";
       }
       nm_conv_form_data($dt_out, $form_in, $form_out, $replaces);
       return $dt_out;
   }

   function returnWhere($aCond, $sOp = 'AND')
   {
       $aWhere = array();
       foreach ($aCond as $sCond)
       {
           $this->handleWhereCond($sCond);
           if ('' != $sCond)
           {
               $aWhere[] = $sCond;
           }
       }
       if (empty($aWhere))
       {
           return '';
       }
       else
       {
           return ' WHERE (' . implode(') ' . $sOp . ' (', $aWhere) . ')';
       }
   } // returnWhere

   function handleWhereCond(&$sCond)
   {
       $sCond = trim($sCond);
       if ('where' == strtolower(substr($sCond, 0, 5)))
       {
           $sCond = trim(substr($sCond, 5));
       }
   } // handleWhereCond

   function ajax_return_values()
   {
          $this->ajax_return_values_all_vert();
          if ('navigate_form' == $this->NM_ajax_opcao)
          {
              $this->NM_ajax_info['clearUpload']      = 'S';
              $this->NM_ajax_info['navStatus']['ret'] = $this->Nav_permite_ret ? 'S' : 'N';
              $this->NM_ajax_info['navStatus']['ava'] = $this->Nav_permite_ava ? 'S' : 'N';
              $this->NM_ajax_info['fldList']['invoice_']['keyVal'] = billing_item_form_pack_protect_string($this->nmgp_dados_form['invoice_']);
              $this->NM_ajax_info['fldList']['id2_']['keyVal'] = billing_item_form_pack_protect_string($this->nmgp_dados_form['id2_']);
          }
   } // ajax_return_values
   function ajax_return_values_all_vert()
   {
          if (isset($this->nmgp_refresh_fields) && isset($this->nmgp_refresh_row) && '' != $this->nmgp_refresh_row)
          {
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row] = $this->NM_ajax_info['param'];
              if (isset($this->Embutida_ronly) && $this->Embutida_ronly)
              {
                  if (isset($this->NM_ajax_changed['id2_']) && $this->NM_ajax_changed['id2_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['id2_'] = $this->id2_;
                  }
                  if (isset($this->NM_ajax_changed['date_']) && $this->NM_ajax_changed['date_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['date_'] = $this->date_;
                  }
                  if (isset($this->NM_ajax_changed['bcode_']) && $this->NM_ajax_changed['bcode_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['bcode_'] = $this->bcode_;
                  }
                  if (isset($this->NM_ajax_changed['invoice_']) && $this->NM_ajax_changed['invoice_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['invoice_'] = $this->invoice_;
                  }
                  if (isset($this->NM_ajax_changed['item_']) && $this->NM_ajax_changed['item_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['item_'] = $this->item_;
                  }
                  if (isset($this->NM_ajax_changed['lin_']) && $this->NM_ajax_changed['lin_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['lin_'] = $this->lin_;
                  }
                  if (isset($this->NM_ajax_changed['sq_']) && $this->NM_ajax_changed['sq_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['sq_'] = $this->sq_;
                  }
                  if (isset($this->NM_ajax_changed['unit_']) && $this->NM_ajax_changed['unit_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['unit_'] = $this->unit_;
                  }
                  if (isset($this->NM_ajax_changed['style_']) && $this->NM_ajax_changed['style_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['style_'] = $this->style_;
                  }
                  if (isset($this->NM_ajax_changed['descrip_']) && $this->NM_ajax_changed['descrip_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['descrip_'] = $this->descrip_;
                  }
                  if (isset($this->NM_ajax_changed['width_']) && $this->NM_ajax_changed['width_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['width_'] = $this->width_;
                  }
                  if (isset($this->NM_ajax_changed['color_']) && $this->NM_ajax_changed['color_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['color_'] = $this->color_;
                  }
                  if (isset($this->NM_ajax_changed['cust_order_']) && $this->NM_ajax_changed['cust_order_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['cust_order_'] = $this->cust_order_;
                  }
                  if (isset($this->NM_ajax_changed['our_order_']) && $this->NM_ajax_changed['our_order_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['our_order_'] = $this->our_order_;
                  }
                  if (isset($this->NM_ajax_changed['dye_order_']) && $this->NM_ajax_changed['dye_order_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['dye_order_'] = $this->dye_order_;
                  }
                  if (isset($this->NM_ajax_changed['dye_lot_']) && $this->NM_ajax_changed['dye_lot_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['dye_lot_'] = $this->dye_lot_;
                  }
                  if (isset($this->NM_ajax_changed['price_']) && $this->NM_ajax_changed['price_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['price_'] = $this->price_;
                  }
                  if (isset($this->NM_ajax_changed['amount_']) && $this->NM_ajax_changed['amount_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['amount_'] = $this->amount_;
                  }
                  if (isset($this->NM_ajax_changed['cases_']) && $this->NM_ajax_changed['cases_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['cases_'] = $this->cases_;
                  }
                  if (isset($this->NM_ajax_changed['adate_']) && $this->NM_ajax_changed['adate_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['adate_'] = $this->adate_;
                  }
                  if (isset($this->NM_ajax_changed['edate_']) && $this->NM_ajax_changed['edate_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['edate_'] = $this->edate_;
                  }
                  if (isset($this->NM_ajax_changed['smit_']) && $this->NM_ajax_changed['smit_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['smit_'] = $this->smit_;
                  }
                  if (isset($this->NM_ajax_changed['memo_']) && $this->NM_ajax_changed['memo_'])
                  {
                      $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['memo_'] = $this->memo_;
                  }
              }
          }
          if (isset($this->nmgp_refresh_row) && '' != $this->nmgp_refresh_row)
          {
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['bcode_'] = $this->bcode_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['invoice_'] = $this->invoice_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['unit_'] = $this->unit_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['style_'] = $this->style_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['descrip_'] = $this->descrip_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['width_'] = $this->width_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['color_'] = $this->color_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['cust_order_'] = $this->cust_order_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['our_order_'] = $this->our_order_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['dye_order_'] = $this->dye_order_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['dye_lot_'] = $this->dye_lot_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['cases_'] = $this->cases_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['smit_'] = $this->smit_;
              $this->form_vert_billing_item_form[$this->nmgp_refresh_row]['memo_'] = $this->memo_;
          }
          $this->NM_ajax_info['rsSize'] = sizeof($this->form_vert_billing_item_form);
          foreach($this->form_vert_billing_item_form as $sc_seq_vert => $aRecData)
          {
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("id2_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['id2_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['id2_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'label',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("date_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['date_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['date_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("bcode_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['bcode_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['bcode_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("invoice_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['invoice_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['invoice_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("item_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['item_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['item_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("lin_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['lin_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['lin_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("sq_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['sq_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['sq_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("unit_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['unit_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['unit_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("style_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['style_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['style_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("descrip_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['descrip_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['descrip_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("width_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['width_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['width_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("color_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['color_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['color_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("cust_order_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['cust_order_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['cust_order_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("our_order_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['our_order_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['our_order_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("dye_order_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['dye_order_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['dye_order_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("dye_lot_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['dye_lot_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['dye_lot_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("price_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['price_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['price_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("amount_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['amount_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['amount_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("cases_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['cases_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['cases_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("adate_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['adate_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['adate_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("edate_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['edate_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['edate_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("smit_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['smit_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['smit_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
              if ('navigate_form' == $this->NM_ajax_opcao || 'backup_line' == $this->NM_ajax_opcao || (isset($this->nmgp_refresh_fields) && in_array("memo_", $this->nmgp_refresh_fields)))
              {
                  $sTmpValue = NM_charset_to_utf8($aRecData['memo_']);
                  $aLookup = array();
          $aLookupOrig = $aLookup;
                  $this->NM_ajax_info['fldList']['memo_' . $sc_seq_vert] = array(
                       'row'    => $sc_seq_vert,
                       'type'    => 'text',
                       'valList' => array($sTmpValue),
                       );
              }
          }
   }

   function ajax_add_parameters()
   {
   } // ajax_add_parameters
  function nm_proc_onload_record($sc_seq_vert=0)
  {
  }
  function nm_proc_onload($bFormat = true)
  {
      $this->nm_guardar_campos();
      if ($bFormat) $this->nm_formatar_campos();
  }
//
//----------------------------------------------------
//-----> 
//----------------------------------------------------
//
   function nm_troca_decimal($sc_parm1, $sc_parm2) 
   { 
      $this->lin_ = str_replace($sc_parm1, $sc_parm2, $this->lin_); 
      $this->sq_ = str_replace($sc_parm1, $sc_parm2, $this->sq_); 
      $this->price_ = str_replace($sc_parm1, $sc_parm2, $this->price_); 
      $this->amount_ = str_replace($sc_parm1, $sc_parm2, $this->amount_); 
      $this->cost_ = str_replace($sc_parm1, $sc_parm2, $this->cost_); 
      $this->cost_yd_ = str_replace($sc_parm1, $sc_parm2, $this->cost_yd_); 
      $this->gp_ = str_replace($sc_parm1, $sc_parm2, $this->gp_); 
      $this->gp_yd_ = str_replace($sc_parm1, $sc_parm2, $this->gp_yd_); 
      $this->pc_ = str_replace($sc_parm1, $sc_parm2, $this->pc_); 
   } 
   function nm_poe_aspas_decimal() 
   { 
      $this->lin_ = "'" . $this->lin_ . "'";
      $this->sq_ = "'" . $this->sq_ . "'";
      $this->price_ = "'" . $this->price_ . "'";
      $this->amount_ = "'" . $this->amount_ . "'";
      $this->cost_ = "'" . $this->cost_ . "'";
      $this->cost_yd_ = "'" . $this->cost_yd_ . "'";
      $this->gp_ = "'" . $this->gp_ . "'";
      $this->gp_yd_ = "'" . $this->gp_yd_ . "'";
      $this->pc_ = "'" . $this->pc_ . "'";
   } 
   function nm_tira_aspas_decimal() 
   { 
      $this->lin_ = str_replace("'", "", $this->lin_); 
      $this->sq_ = str_replace("'", "", $this->sq_); 
      $this->price_ = str_replace("'", "", $this->price_); 
      $this->amount_ = str_replace("'", "", $this->amount_); 
      $this->cost_ = str_replace("'", "", $this->cost_); 
      $this->cost_yd_ = str_replace("'", "", $this->cost_yd_); 
      $this->gp_ = str_replace("'", "", $this->gp_); 
      $this->gp_yd_ = str_replace("'", "", $this->gp_yd_); 
      $this->pc_ = str_replace("'", "", $this->pc_); 
   } 
//----------- 


   function temRegistros($sWhere)
   {
       if ('' == $sWhere)
       {
           return false;
       }
       $nmgp_sel_count = 'SELECT COUNT(*) FROM ' . $this->Ini->nm_tabela . ' WHERE ' . $sWhere;
       $_SESSION['scriptcase']['sc_sql_ult_comando'] = $nmgp_sel_count; 
       $rsc = $this->Db->Execute($nmgp_sel_count); 
       if ($rsc === false && !$rsc->EOF)
       {
           $this->Erro->mensagem(__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dbas'], $this->Db->ErrorMsg());
           exit; 
       }
       $iTotal = $rsc->fields[0];
       $rsc->Close();
       return 0 < $iTotal;
   } // temRegistros

   function deletaRegistros($sWhere)
   {
       if ('' == $sWhere)
       {
           return false;
       }
       $nmgp_sel_count = 'DELETE FROM ' . $this->Ini->nm_tabela . ' WHERE ' . $sWhere;
       $_SESSION['scriptcase']['sc_sql_ult_comando'] = $nmgp_sel_count; 
       $rsc = $this->Db->Execute($nmgp_sel_count); 
       $bResult = $rsc;
       $rsc->Close();
       return $bResult == true;
   } // deletaRegistros

   function nm_acessa_banco() 
   { 
      global $sc_seq_vert,  $nm_form_submit, $teste_validade, $sc_where;
 
      $NM_val_null = array();
      $NM_val_form = array();
      $this->sc_erro_insert = "";
      $this->sc_erro_update = "";
      $this->sc_erro_delete = "";
      if (!empty($this->sc_force_zero))
      {
          foreach ($this->sc_force_zero as $i_force_zero => $sc_force_zero_field)
          {
              eval('if ($this->' . $sc_force_zero_field . ' == 0) {$this->' . $sc_force_zero_field . ' = "";}');
          }
      }
      $this->sc_force_zero = array();
      $SC_tem_cmp_update = true; 
      if ($this->nmgp_opcao == "alterar")
      {
          $SC_ex_update = true; 
          $SC_ex_upd_or = true; 
          $this->nmgp_dados_select = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert];
          if ($this->nmgp_dados_select['id2_'] == $this->id2_ &&
              $this->nmgp_dados_select['date_'] == $this->date_ &&
              $this->nmgp_dados_select['bcode_'] == $this->bcode_ &&
              $this->nmgp_dados_select['invoice_'] == $this->invoice_ &&
              $this->nmgp_dados_select['item_'] == $this->item_ &&
              $this->nmgp_dados_select['lin_'] == $this->lin_ &&
              $this->nmgp_dados_select['sq_'] == $this->sq_ &&
              $this->nmgp_dados_select['unit_'] == $this->unit_ &&
              $this->nmgp_dados_select['style_'] == $this->style_ &&
              $this->nmgp_dados_select['descrip_'] == $this->descrip_ &&
              $this->nmgp_dados_select['width_'] == $this->width_ &&
              $this->nmgp_dados_select['color_'] == $this->color_ &&
              $this->nmgp_dados_select['cust_order_'] == $this->cust_order_ &&
              $this->nmgp_dados_select['our_order_'] == $this->our_order_ &&
              $this->nmgp_dados_select['dye_order_'] == $this->dye_order_ &&
              $this->nmgp_dados_select['dye_lot_'] == $this->dye_lot_ &&
              $this->nmgp_dados_select['price_'] == $this->price_ &&
              $this->nmgp_dados_select['amount_'] == $this->amount_ &&
              $this->nmgp_dados_select['cases_'] == $this->cases_ &&
              $this->nmgp_dados_select['adate_'] == $this->adate_ &&
              $this->nmgp_dados_select['edate_'] == $this->edate_ &&
              $this->nmgp_dados_select['smit_'] == $this->smit_ &&
              $this->nmgp_dados_select['memo_'] == $this->memo_)
          {
              $SC_ex_update = false; 
              $SC_ex_upd_or = false; 
          }
          else
          {
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['id2_'] = $this->id2_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['date_'] = $this->date_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['bcode_'] = $this->bcode_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['invoice_'] = $this->invoice_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['item_'] = $this->item_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['lin_'] = $this->lin_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['sq_'] = $this->sq_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['unit_'] = $this->unit_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['style_'] = $this->style_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['descrip_'] = $this->descrip_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['width_'] = $this->width_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['color_'] = $this->color_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['cust_order_'] = $this->cust_order_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['our_order_'] = $this->our_order_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['dye_order_'] = $this->dye_order_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['dye_lot_'] = $this->dye_lot_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['price_'] = $this->price_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['amount_'] = $this->amount_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['cases_'] = $this->cases_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['adate_'] = $this->adate_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['edate_'] = $this->edate_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['smit_'] = $this->smit_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['memo_'] = $this->memo_;
          }
      }
      $_SESSION['scriptcase']['sc_sql_ult_conexao'] = ''; 
      $salva_opcao = $this->nmgp_opcao; 
      if ($this->sc_evento != "novo") 
      { 
          $this->sc_evento = ""; 
      } 
      if (!in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access) && !$this->Ini->sc_tem_trans_banco && in_array($this->nmgp_opcao, array('excluir', 'incluir', 'alterar')))
      { 
          $this->Db->BeginTrans(); 
          $this->Ini->sc_tem_trans_banco = true; 
      } 
      $NM_val_form['id2_'] = $this->id2_;
      $NM_val_form['date_'] = $this->date_;
      $NM_val_form['bcode_'] = $this->bcode_;
      $NM_val_form['invoice_'] = $this->invoice_;
      $NM_val_form['item_'] = $this->item_;
      $NM_val_form['lin_'] = $this->lin_;
      $NM_val_form['sq_'] = $this->sq_;
      $NM_val_form['unit_'] = $this->unit_;
      $NM_val_form['style_'] = $this->style_;
      $NM_val_form['descrip_'] = $this->descrip_;
      $NM_val_form['width_'] = $this->width_;
      $NM_val_form['color_'] = $this->color_;
      $NM_val_form['cust_order_'] = $this->cust_order_;
      $NM_val_form['our_order_'] = $this->our_order_;
      $NM_val_form['dye_order_'] = $this->dye_order_;
      $NM_val_form['dye_lot_'] = $this->dye_lot_;
      $NM_val_form['price_'] = $this->price_;
      $NM_val_form['amount_'] = $this->amount_;
      $NM_val_form['cases_'] = $this->cases_;
      $NM_val_form['adate_'] = $this->adate_;
      $NM_val_form['edate_'] = $this->edate_;
      $NM_val_form['smit_'] = $this->smit_;
      $NM_val_form['memo_'] = $this->memo_;
      $NM_val_form['cost_'] = $this->cost_;
      $NM_val_form['cost_yd_'] = $this->cost_yd_;
      $NM_val_form['gp_'] = $this->gp_;
      $NM_val_form['gp_yd_'] = $this->gp_yd_;
      $NM_val_form['pc_'] = $this->pc_;
      if ($this->item_ == "")  
      { 
          $this->item_ = 0;
          $this->sc_force_zero[] = 'item_';
      } 
      if ($this->lin_ == "")  
      { 
          $this->lin_ = 0;
          $this->sc_force_zero[] = 'lin_';
      } 
      if ($this->sq_ == "")  
      { 
          $this->sq_ = 0;
          $this->sc_force_zero[] = 'sq_';
      } 
      if ($this->price_ == "")  
      { 
          $this->price_ = 0;
          $this->sc_force_zero[] = 'price_';
      } 
      if ($this->amount_ == "")  
      { 
          $this->amount_ = 0;
          $this->sc_force_zero[] = 'amount_';
      } 
      if ($this->cost_ == "")  
      { 
          $this->cost_ = 0;
          $this->sc_force_zero[] = 'cost_';
      } 
      if ($this->cost_yd_ == "")  
      { 
          $this->cost_yd_ = 0;
          $this->sc_force_zero[] = 'cost_yd_';
      } 
      if ($this->gp_ == "")  
      { 
          $this->gp_ = 0;
          $this->sc_force_zero[] = 'gp_';
      } 
      if ($this->gp_yd_ == "")  
      { 
          $this->gp_yd_ = 0;
          $this->sc_force_zero[] = 'gp_yd_';
      } 
      if ($this->pc_ == "")  
      { 
          $this->pc_ = 0;
          $this->sc_force_zero[] = 'pc_';
      } 
      if ($this->id2_ == "")  
      { 
          $this->id2_ = 0;
      } 
      $nm_bases_lob_geral = array_merge($this->Ini->nm_bases_oracle, $this->Ini->nm_bases_ibase, $this->Ini->nm_bases_informix);
      if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['decimal_db'] == ",") 
      {
          $this->nm_troca_decimal(".", ",");
      }
      if ($this->nmgp_opcao == "alterar" || $this->nmgp_opcao == "incluir") 
      {
          $this->invoice_ = substr($this->Db->qstr($this->invoice_), 1, -1); 
          if ($this->invoice_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->invoice_ = "null"; 
              $NM_val_null[] = "invoice_";
          } 
          if ($this->date_ == "")  
          { 
              $this->date_ = "null"; 
              $NM_val_null[] = "date_";
          } 
          $this->bcode_ = substr($this->Db->qstr($this->bcode_), 1, -1); 
          if ($this->bcode_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->bcode_ = "null"; 
              $NM_val_null[] = "bcode_";
          } 
          $this->style_ = substr($this->Db->qstr($this->style_), 1, -1); 
          if ($this->style_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->style_ = "null"; 
              $NM_val_null[] = "style_";
          } 
          $this->width_ = substr($this->Db->qstr($this->width_), 1, -1); 
          if ($this->width_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->width_ = "null"; 
              $NM_val_null[] = "width_";
          } 
          $this->color_ = substr($this->Db->qstr($this->color_), 1, -1); 
          if ($this->color_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->color_ = "null"; 
              $NM_val_null[] = "color_";
          } 
          $this->cust_order_ = substr($this->Db->qstr($this->cust_order_), 1, -1); 
          if ($this->cust_order_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->cust_order_ = "null"; 
              $NM_val_null[] = "cust_order_";
          } 
          $this->our_order_ = substr($this->Db->qstr($this->our_order_), 1, -1); 
          if ($this->our_order_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->our_order_ = "null"; 
              $NM_val_null[] = "our_order_";
          } 
          $this->unit_ = substr($this->Db->qstr($this->unit_), 1, -1); 
          if ($this->unit_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->unit_ = "null"; 
              $NM_val_null[] = "unit_";
          } 
          $this->descrip_ = substr($this->Db->qstr($this->descrip_), 1, -1); 
          if ($this->descrip_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->descrip_ = "null"; 
              $NM_val_null[] = "descrip_";
          } 
          $this->dye_order_ = substr($this->Db->qstr($this->dye_order_), 1, -1); 
          if ($this->dye_order_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->dye_order_ = "null"; 
              $NM_val_null[] = "dye_order_";
          } 
          $this->dye_lot_ = substr($this->Db->qstr($this->dye_lot_), 1, -1); 
          if ($this->dye_lot_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->dye_lot_ = "null"; 
              $NM_val_null[] = "dye_lot_";
          } 
          $this->cases_ = substr($this->Db->qstr($this->cases_), 1, -1); 
          if ($this->cases_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->cases_ = "null"; 
              $NM_val_null[] = "cases_";
          } 
          if ($this->adate_ == "")  
          { 
              $this->adate_ = "null"; 
              $NM_val_null[] = "adate_";
          } 
          if ($this->edate_ == "")  
          { 
              $this->edate_ = "null"; 
              $NM_val_null[] = "edate_";
          } 
          $this->smit_ = substr($this->Db->qstr($this->smit_), 1, -1); 
          if ($this->smit_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->smit_ = "null"; 
              $NM_val_null[] = "smit_";
          } 
          $this->memo_ = substr($this->Db->qstr($this->memo_), 1, -1); 
          if ($this->memo_ == "" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))  
          { 
              $this->memo_ = "null"; 
              $NM_val_null[] = "memo_";
          } 
      }
      if ($this->nmgp_opcao == "alterar") 
      {
          if (($this->Embutida_form || $this->Embutida_multi) && isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['foreign_key']) && !empty($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['foreign_key']))
          {
              foreach ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['foreign_key'] as $sFKName => $sFKValue)
              {
                   if (isset($this->sc_conv_var[$sFKName]))
                   {
                       $sFKName = $this->sc_conv_var[$sFKName];
                   }
                  eval("\$this->" . $sFKName . " = \"" . $sFKValue . "\";");
              }
          }
          if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['decimal_db'] == ",") 
          {
              $this->nm_poe_aspas_decimal();
          }
          if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ ";
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ ";
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ ";
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ ";
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          else  
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ ";
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          if ($rs1 === false)  
          { 
              $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dbas'], $this->Db->ErrorMsg()); 
              if ($this->NM_ajax_flag)
              {
                 billing_item_form_pack_ajax_response();
              }
              exit; 
          }  
          $bUpdateOk = true;
          $tmp_result = (int) $rs1->fields[0]; 
          if ($tmp_result != 1) 
          { 
              $this->Campos_Mens_erro = $this->Ini->Nm_lang['lang_errm_nfnd']; 
              $this->nmgp_opcao = "nada"; 
              $bUpdateOk = false;
              $this->sc_evento = 'update';
          } 
          $aUpdateOk = array();
          $bUpdateOk = $bUpdateOk && empty($aUpdateOk);
          if ($bUpdateOk)
          { 
              $rs1->Close(); 
              if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
              { 
                  $comando = "UPDATE " . $this->Ini->nm_tabela . " SET ITEM = $this->item_, `DATE` = #$this->date_#, BCODE = '$this->bcode_', LIN = $this->lin_, SQ = $this->sq_, STYLE = '$this->style_', WIDTH = '$this->width_', COLOR = '$this->color_', CUST_ORDER = '$this->cust_order_', OUR_ORDER = '$this->our_order_', PRICE = $this->price_, UNIT = '$this->unit_', AMOUNT = $this->amount_, DESCRIP = '$this->descrip_', DYE_ORDER = '$this->dye_order_', DYE_LOT = '$this->dye_lot_', CASES = '$this->cases_', ADATE = #$this->adate_#, EDATE = #$this->edate_#, SMIT = '$this->smit_', MEMO = '$this->memo_'";  
              } 
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
              { 
                  $comando = "UPDATE " . $this->Ini->nm_tabela . " SET ITEM = $this->item_, `DATE` = '$this->date_', BCODE = '$this->bcode_', LIN = $this->lin_, SQ = $this->sq_, STYLE = '$this->style_', WIDTH = '$this->width_', COLOR = '$this->color_', CUST_ORDER = '$this->cust_order_', OUR_ORDER = '$this->our_order_', PRICE = $this->price_, UNIT = '$this->unit_', AMOUNT = $this->amount_, DESCRIP = '$this->descrip_', DYE_ORDER = '$this->dye_order_', DYE_LOT = '$this->dye_lot_', CASES = '$this->cases_', ADATE = '$this->adate_', EDATE = '$this->edate_', SMIT = '$this->smit_', MEMO = '$this->memo_'";  
              } 
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
              { 
                  $comando_oracle = "UPDATE " . $this->Ini->nm_tabela . " SET ITEM = $this->item_, `DATE` = '$this->date_', BCODE = '$this->bcode_', LIN = $this->lin_, SQ = $this->sq_, STYLE = '$this->style_', WIDTH = '$this->width_', COLOR = '$this->color_', CUST_ORDER = '$this->cust_order_', OUR_ORDER = '$this->our_order_', PRICE = $this->price_, UNIT = '$this->unit_', AMOUNT = $this->amount_, DESCRIP = '$this->descrip_', DYE_ORDER = '$this->dye_order_', DYE_LOT = '$this->dye_lot_', CASES = '$this->cases_', ADATE = '$this->adate_', EDATE = '$this->edate_', SMIT = '$this->smit_', MEMO = '$this->memo_'";  
              } 
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
              { 
                  $comando_oracle = "UPDATE " . $this->Ini->nm_tabela . " SET ITEM = $this->item_, `DATE` = EXTEND('$this->date_', YEAR TO DAY), BCODE = '$this->bcode_', LIN = $this->lin_, SQ = $this->sq_, STYLE = '$this->style_', WIDTH = '$this->width_', COLOR = '$this->color_', CUST_ORDER = '$this->cust_order_', OUR_ORDER = '$this->our_order_', PRICE = $this->price_, UNIT = '$this->unit_', AMOUNT = $this->amount_, DESCRIP = '$this->descrip_', DYE_ORDER = '$this->dye_order_', DYE_LOT = '$this->dye_lot_', CASES = '$this->cases_', ADATE = EXTEND('$this->adate_', YEAR TO DAY), EDATE = EXTEND('$this->edate_', YEAR TO DAY), SMIT = '$this->smit_', MEMO = '$this->memo_'";  
              } 
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_ibase))
              { 
                  $comando_oracle = "UPDATE " . $this->Ini->nm_tabela . " SET ITEM = $this->item_, `DATE` = '$this->date_', BCODE = '$this->bcode_', LIN = $this->lin_, SQ = $this->sq_, STYLE = '$this->style_', WIDTH = '$this->width_', COLOR = '$this->color_', CUST_ORDER = '$this->cust_order_', OUR_ORDER = '$this->our_order_', PRICE = $this->price_, UNIT = '$this->unit_', AMOUNT = $this->amount_, DESCRIP = '$this->descrip_', DYE_ORDER = '$this->dye_order_', DYE_LOT = '$this->dye_lot_', CASES = '$this->cases_', ADATE = '$this->adate_', EDATE = '$this->edate_', SMIT = '$this->smit_', MEMO = '$this->memo_'";  
              } 
              else 
              { 
                  $comando = "UPDATE " . $this->Ini->nm_tabela . " SET ITEM = $this->item_, `DATE` = '$this->date_', BCODE = '$this->bcode_', LIN = $this->lin_, SQ = $this->sq_, STYLE = '$this->style_', WIDTH = '$this->width_', COLOR = '$this->color_', CUST_ORDER = '$this->cust_order_', OUR_ORDER = '$this->our_order_', PRICE = $this->price_, UNIT = '$this->unit_', AMOUNT = $this->amount_, DESCRIP = '$this->descrip_', DYE_ORDER = '$this->dye_order_', DYE_LOT = '$this->dye_lot_', CASES = '$this->cases_', ADATE = '$this->adate_', EDATE = '$this->edate_', SMIT = '$this->smit_', MEMO = '$this->memo_'";  
              } 
              if (isset($NM_val_form['cost_']) && $NM_val_form['cost_'] != $this->nmgp_dados_select['cost_']) 
              { 
                  if ($SC_ex_update || $SC_tem_cmp_update) 
                  { 
                      $comando        .= ","; 
                      $comando_oracle .= ","; 
                  } 
                  $comando        .= " COST = $this->cost_"; 
                  $comando_oracle        .= " COST = $this->cost_"; 
                  $SC_ex_update = true; 
                  $SC_ex_upd_or = true; 
              } 
              if (isset($NM_val_form['cost_yd_']) && $NM_val_form['cost_yd_'] != $this->nmgp_dados_select['cost_yd_']) 
              { 
                  if ($SC_ex_update || $SC_tem_cmp_update) 
                  { 
                      $comando        .= ","; 
                      $comando_oracle .= ","; 
                  } 
                  $comando        .= " COST_YD = $this->cost_yd_"; 
                  $comando_oracle        .= " COST_YD = $this->cost_yd_"; 
                  $SC_ex_update = true; 
                  $SC_ex_upd_or = true; 
              } 
              if (isset($NM_val_form['gp_']) && $NM_val_form['gp_'] != $this->nmgp_dados_select['gp_']) 
              { 
                  if ($SC_ex_update || $SC_tem_cmp_update) 
                  { 
                      $comando        .= ","; 
                      $comando_oracle .= ","; 
                  } 
                  $comando        .= " GP = $this->gp_"; 
                  $comando_oracle        .= " GP = $this->gp_"; 
                  $SC_ex_update = true; 
                  $SC_ex_upd_or = true; 
              } 
              if (isset($NM_val_form['gp_yd_']) && $NM_val_form['gp_yd_'] != $this->nmgp_dados_select['gp_yd_']) 
              { 
                  if ($SC_ex_update || $SC_tem_cmp_update) 
                  { 
                      $comando        .= ","; 
                      $comando_oracle .= ","; 
                  } 
                  $comando        .= " GP_YD = $this->gp_yd_"; 
                  $comando_oracle        .= " GP_YD = $this->gp_yd_"; 
                  $SC_ex_update = true; 
                  $SC_ex_upd_or = true; 
              } 
              if (isset($NM_val_form['pc_']) && $NM_val_form['pc_'] != $this->nmgp_dados_select['pc_']) 
              { 
                  if ($SC_ex_update || $SC_tem_cmp_update) 
                  { 
                      $comando        .= ","; 
                      $comando_oracle .= ","; 
                  } 
                  $comando        .= " PC = $this->pc_"; 
                  $comando_oracle        .= " PC = $this->pc_"; 
                  $SC_ex_update = true; 
                  $SC_ex_upd_or = true; 
              } 
              if (in_array(strtolower($this->Ini->nm_tpbanco), $nm_bases_lob_geral))
              { 
                  $comando = $comando_oracle;  
                  $SC_ex_update = $SC_ex_upd_or;
              }   
              if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
              {
                  $comando .= " WHERE INVOICE = '$this->invoice_' and ID2 = $this->id2_ ";  
              }  
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
              {
                  $comando .= " WHERE INVOICE = '$this->invoice_' and ID2 = $this->id2_ ";  
              }  
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
              {
                  $comando .= " WHERE INVOICE = '$this->invoice_' and ID2 = $this->id2_ ";  
              }  
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
              {
                  $comando .= " WHERE INVOICE = '$this->invoice_' and ID2 = $this->id2_ ";  
              }  
              else  
              {
                  $comando .= " WHERE INVOICE = '$this->invoice_' and ID2 = $this->id2_ ";  
              }  
              $comando = str_replace("'null'", "null", $comando) ; 
              $comando = str_replace("#null#", "null", $comando) ; 
              if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
              {
                $comando = str_replace("EXTEND('', YEAR TO FRACTION)", "null", $comando) ; 
                $comando = str_replace("EXTEND(null, YEAR TO FRACTION)", "null", $comando) ; 
                $comando = str_replace("EXTEND('', YEAR TO DAY)", "null", $comando) ; 
                $comando = str_replace("EXTEND(null, YEAR TO DAY)", "null", $comando) ; 
              }  
              if ($SC_ex_update || $SC_tem_cmp_update)
              { 
                  $_SESSION['scriptcase']['sc_sql_ult_comando'] = $comando; 
                  $rs = $this->Db->Execute($comando);  
                  if ($rs === false) 
                  { 
                      if (FALSE === strpos(strtoupper($this->Db->ErrorMsg()), "MAIL SENT") && FALSE === strpos(strtoupper($this->Db->ErrorMsg()), "WARNING"))
                      {
                          $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_updt'], $this->Db->ErrorMsg(), true); 
                          if (isset($_SESSION['scriptcase']['erro_handler']) && $_SESSION['scriptcase']['erro_handler']) 
                          { 
                              $this->sc_erro_update = $this->Db->ErrorMsg();  
                              $this->NM_rollback_db(); 
                              if ($this->NM_ajax_flag)
                              {
                                  billing_item_form_pack_ajax_response();
                              }
                              exit;  
                          }   
                      }   
                  }   
              }   
              if (in_array(strtolower($this->Ini->nm_tpbanco), $nm_bases_lob_geral))
              { 
              }   
              $this->sc_evento = "update"; 
              $this->nmgp_opcao = "igual"; 
              $this->nm_flag_iframe = true;
              if ($this->lig_edit_lookup)
              {
                  $this->lig_edit_lookup_call = true;
              }

              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['db_changed'] = true;

              $this->sc_teve_alt = true; 
              if     (isset($NM_val_form) && isset($NM_val_form['invoice_'])) { $this->invoice_ = $NM_val_form['invoice_']; }
              elseif (isset($this->invoice_)) { $this->nm_limpa_alfa($this->invoice_); }
              if     (isset($NM_val_form) && isset($NM_val_form['item_'])) { $this->item_ = $NM_val_form['item_']; }
              elseif (isset($this->item_)) { $this->nm_limpa_alfa($this->item_); }
              if     (isset($NM_val_form) && isset($NM_val_form['bcode_'])) { $this->bcode_ = $NM_val_form['bcode_']; }
              elseif (isset($this->bcode_)) { $this->nm_limpa_alfa($this->bcode_); }
              if     (isset($NM_val_form) && isset($NM_val_form['lin_'])) { $this->lin_ = $NM_val_form['lin_']; }
              elseif (isset($this->lin_)) { $this->nm_limpa_alfa($this->lin_); }
              if     (isset($NM_val_form) && isset($NM_val_form['sq_'])) { $this->sq_ = $NM_val_form['sq_']; }
              elseif (isset($this->sq_)) { $this->nm_limpa_alfa($this->sq_); }
              if     (isset($NM_val_form) && isset($NM_val_form['style_'])) { $this->style_ = $NM_val_form['style_']; }
              elseif (isset($this->style_)) { $this->nm_limpa_alfa($this->style_); }
              if     (isset($NM_val_form) && isset($NM_val_form['width_'])) { $this->width_ = $NM_val_form['width_']; }
              elseif (isset($this->width_)) { $this->nm_limpa_alfa($this->width_); }
              if     (isset($NM_val_form) && isset($NM_val_form['color_'])) { $this->color_ = $NM_val_form['color_']; }
              elseif (isset($this->color_)) { $this->nm_limpa_alfa($this->color_); }
              if     (isset($NM_val_form) && isset($NM_val_form['cust_order_'])) { $this->cust_order_ = $NM_val_form['cust_order_']; }
              elseif (isset($this->cust_order_)) { $this->nm_limpa_alfa($this->cust_order_); }
              if     (isset($NM_val_form) && isset($NM_val_form['our_order_'])) { $this->our_order_ = $NM_val_form['our_order_']; }
              elseif (isset($this->our_order_)) { $this->nm_limpa_alfa($this->our_order_); }
              if     (isset($NM_val_form) && isset($NM_val_form['price_'])) { $this->price_ = $NM_val_form['price_']; }
              elseif (isset($this->price_)) { $this->nm_limpa_alfa($this->price_); }
              if     (isset($NM_val_form) && isset($NM_val_form['unit_'])) { $this->unit_ = $NM_val_form['unit_']; }
              elseif (isset($this->unit_)) { $this->nm_limpa_alfa($this->unit_); }
              if     (isset($NM_val_form) && isset($NM_val_form['amount_'])) { $this->amount_ = $NM_val_form['amount_']; }
              elseif (isset($this->amount_)) { $this->nm_limpa_alfa($this->amount_); }
              if     (isset($NM_val_form) && isset($NM_val_form['descrip_'])) { $this->descrip_ = $NM_val_form['descrip_']; }
              elseif (isset($this->descrip_)) { $this->nm_limpa_alfa($this->descrip_); }
              if     (isset($NM_val_form) && isset($NM_val_form['dye_order_'])) { $this->dye_order_ = $NM_val_form['dye_order_']; }
              elseif (isset($this->dye_order_)) { $this->nm_limpa_alfa($this->dye_order_); }
              if     (isset($NM_val_form) && isset($NM_val_form['dye_lot_'])) { $this->dye_lot_ = $NM_val_form['dye_lot_']; }
              elseif (isset($this->dye_lot_)) { $this->nm_limpa_alfa($this->dye_lot_); }
              if     (isset($NM_val_form) && isset($NM_val_form['cases_'])) { $this->cases_ = $NM_val_form['cases_']; }
              elseif (isset($this->cases_)) { $this->nm_limpa_alfa($this->cases_); }
              if     (isset($NM_val_form) && isset($NM_val_form['smit_'])) { $this->smit_ = $NM_val_form['smit_']; }
              elseif (isset($this->smit_)) { $this->nm_limpa_alfa($this->smit_); }
              if     (isset($NM_val_form) && isset($NM_val_form['memo_'])) { $this->memo_ = $NM_val_form['memo_']; }
              elseif (isset($this->memo_)) { $this->nm_limpa_alfa($this->memo_); }
              if     (isset($NM_val_form) && isset($NM_val_form['id2_'])) { $this->id2_ = $NM_val_form['id2_']; }
              elseif (isset($this->id2_)) { $this->nm_limpa_alfa($this->id2_); }

              $this->nm_formatar_campos();
              if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
              {
              }

              $aOldRefresh               = $this->nmgp_refresh_fields;
              $this->nmgp_refresh_fields = array('id2_', 'date_', 'bcode_', 'invoice_', 'item_', 'lin_', 'sq_', 'unit_', 'style_', 'descrip_', 'width_', 'color_', 'cust_order_', 'our_order_', 'dye_order_', 'dye_lot_', 'price_', 'amount_', 'cases_', 'adate_', 'edate_', 'smit_', 'memo_');
              $this->ajax_return_values();
              $this->nmgp_refresh_fields = $aOldRefresh;

              if (isset($this->Embutida_ronly) && $this->Embutida_ronly)
              {

                  $this->NM_ajax_info['readOnly']['id2_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['date_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['bcode_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['invoice_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['item_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['lin_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['sq_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['unit_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['style_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['descrip_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['width_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['color_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['cust_order_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['our_order_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['dye_order_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['dye_lot_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['price_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['amount_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['cases_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['adate_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['edate_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['smit_' . $this->nmgp_refresh_row] = 'on';

                  $this->NM_ajax_info['readOnly']['memo_' . $this->nmgp_refresh_row] = 'on';


                  $this->NM_ajax_info['closeLine'] = $this->nmgp_refresh_row;
              }

              $this->nm_tira_formatacao();
              $this->nm_converte_datas();
          }  
      }  
      if ($this->nmgp_opcao == "incluir") 
      { 
          $NM_cmp_auto = "";
          $NM_seq_auto = "";
          if (($this->Embutida_form || $this->Embutida_multi) && isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['foreign_key']) && !empty($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['foreign_key']))
          {
              foreach ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['foreign_key'] as $sFKName => $sFKValue)
              {
                   if (isset($this->sc_conv_var[$sFKName]))
                   {
                       $sFKName = $this->sc_conv_var[$sFKName];
                   }
                  eval("\$this->" . $sFKName . " = \"" . $sFKValue . "\";");
              }
          }
          if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['decimal_db'] == ",") 
          {
              $this->nm_poe_aspas_decimal();
          }
          $bInsertOk = true;
          if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "; 
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "; 
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "; 
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "; 
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          else  
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "; 
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          if ($rs1 === false)  
          { 
              $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dbas'], $this->Db->ErrorMsg()); 
              exit; 
          }  
          $tmp_result = (int) $rs1->fields[0]; 
          if ($tmp_result != 0) 
          { 
              $this->Campos_Mens_erro = $this->Ini->Nm_lang['lang_errm_pkey']; 
              $this->nmgp_opcao = "nada"; 
              $GLOBALS["erro_incl"] = 1; 
              $bInsertOk = false;
              $this->sc_evento = 'insert';
          } 
          $rs1->Close(); 
          $aInsertOk = array(); 
          $bInsertOk = $bInsertOk && empty($aInsertOk);
          if ($bInsertOk)
          { 
              if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
              { 
                  $comando = "INSERT INTO " . $this->Ini->nm_tabela . " (INVOICE, ITEM, `DATE`, BCODE, LIN, SQ, STYLE, WIDTH, COLOR, CUST_ORDER, OUR_ORDER, PRICE, UNIT, AMOUNT, DESCRIP, DYE_ORDER, DYE_LOT, CASES, COST, COST_YD, GP, GP_YD, PC, ADATE, EDATE, SMIT, MEMO, ID2) VALUES ('$this->invoice_', $this->item_, #$this->date_#, '$this->bcode_', $this->lin_, $this->sq_, '$this->style_', '$this->width_', '$this->color_', '$this->cust_order_', '$this->our_order_', $this->price_, '$this->unit_', $this->amount_, '$this->descrip_', '$this->dye_order_', '$this->dye_lot_', '$this->cases_', $this->cost_, $this->cost_yd_, $this->gp_, $this->gp_yd_, $this->pc_, #$this->adate_#, #$this->edate_#, '$this->smit_', '$this->memo_', $this->id2_)"; 
              }
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
              { 
                  $comando = "INSERT INTO " . $this->Ini->nm_tabela . " (" . $NM_cmp_auto . "INVOICE, ITEM, `DATE`, BCODE, LIN, SQ, STYLE, WIDTH, COLOR, CUST_ORDER, OUR_ORDER, PRICE, UNIT, AMOUNT, DESCRIP, DYE_ORDER, DYE_LOT, CASES, COST, COST_YD, GP, GP_YD, PC, ADATE, EDATE, SMIT, MEMO, ID2) VALUES (" . $NM_seq_auto . "'$this->invoice_', $this->item_, '$this->date_', '$this->bcode_', $this->lin_, $this->sq_, '$this->style_', '$this->width_', '$this->color_', '$this->cust_order_', '$this->our_order_', $this->price_, '$this->unit_', $this->amount_, '$this->descrip_', '$this->dye_order_', '$this->dye_lot_', '$this->cases_', $this->cost_, $this->cost_yd_, $this->gp_, $this->gp_yd_, $this->pc_, '$this->adate_', '$this->edate_', '$this->smit_', '$this->memo_', $this->id2_)"; 
              }
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
              {
                  $comando = "INSERT INTO " . $this->Ini->nm_tabela . " (" . $NM_cmp_auto . "INVOICE, ITEM, `DATE`, BCODE, LIN, SQ, STYLE, WIDTH, COLOR, CUST_ORDER, OUR_ORDER, PRICE, UNIT, AMOUNT, DESCRIP, DYE_ORDER, DYE_LOT, CASES, COST, COST_YD, GP, GP_YD, PC, ADATE, EDATE, SMIT, MEMO, ID2) VALUES (" . $NM_seq_auto . "'$this->invoice_', $this->item_, '$this->date_', '$this->bcode_', $this->lin_, $this->sq_, '$this->style_', '$this->width_', '$this->color_', '$this->cust_order_', '$this->our_order_', $this->price_, '$this->unit_', $this->amount_, '$this->descrip_', '$this->dye_order_', '$this->dye_lot_', '$this->cases_', $this->cost_, $this->cost_yd_, $this->gp_, $this->gp_yd_, $this->pc_, '$this->adate_', '$this->edate_', '$this->smit_', '$this->memo_', $this->id2_)"; 
              }
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
              {
                  $comando = "INSERT INTO " . $this->Ini->nm_tabela . " (" . $NM_cmp_auto . "INVOICE, ITEM, `DATE`, BCODE, LIN, SQ, STYLE, WIDTH, COLOR, CUST_ORDER, OUR_ORDER, PRICE, UNIT, AMOUNT, DESCRIP, DYE_ORDER, DYE_LOT, CASES, COST, COST_YD, GP, GP_YD, PC, ADATE, EDATE, SMIT, MEMO, ID2) VALUES (" . $NM_seq_auto . "'$this->invoice_', $this->item_, EXTEND('$this->date_', YEAR TO DAY), '$this->bcode_', $this->lin_, $this->sq_, '$this->style_', '$this->width_', '$this->color_', '$this->cust_order_', '$this->our_order_', $this->price_, '$this->unit_', $this->amount_, '$this->descrip_', '$this->dye_order_', '$this->dye_lot_', '$this->cases_', $this->cost_, $this->cost_yd_, $this->gp_, $this->gp_yd_, $this->pc_, EXTEND('$this->adate_', YEAR TO DAY), EXTEND('$this->edate_', YEAR TO DAY), '$this->smit_', '$this->memo_', $this->id2_)"; 
              }
              else
              {
                  $comando = "INSERT INTO " . $this->Ini->nm_tabela . " (" . $NM_cmp_auto . "INVOICE, ITEM, `DATE`, BCODE, LIN, SQ, STYLE, WIDTH, COLOR, CUST_ORDER, OUR_ORDER, PRICE, UNIT, AMOUNT, DESCRIP, DYE_ORDER, DYE_LOT, CASES, COST, COST_YD, GP, GP_YD, PC, ADATE, EDATE, SMIT, MEMO, ID2) VALUES (" . $NM_seq_auto . "'$this->invoice_', $this->item_, '$this->date_', '$this->bcode_', $this->lin_, $this->sq_, '$this->style_', '$this->width_', '$this->color_', '$this->cust_order_', '$this->our_order_', $this->price_, '$this->unit_', $this->amount_, '$this->descrip_', '$this->dye_order_', '$this->dye_lot_', '$this->cases_', $this->cost_, $this->cost_yd_, $this->gp_, $this->gp_yd_, $this->pc_, '$this->adate_', '$this->edate_', '$this->smit_', '$this->memo_', $this->id2_)"; 
              }
              $comando = str_replace("'null'", "null", $comando) ; 
              $comando = str_replace("#null#", "null", $comando) ; 
              if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
              {
                $comando = str_replace("EXTEND('', YEAR TO FRACTION)", "null", $comando) ; 
                $comando = str_replace("EXTEND(null, YEAR TO FRACTION)", "null", $comando) ; 
                $comando = str_replace("EXTEND('', YEAR TO DAY)", "null", $comando) ; 
                $comando = str_replace("EXTEND(null, YEAR TO DAY)", "null", $comando) ; 
              }  
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = $comando; 
              $rs = $this->Db->Execute($comando); 
              if ($rs === false)  
              { 
                  if (FALSE === strpos(strtoupper($this->Db->ErrorMsg()), "MAIL SENT") && FALSE === strpos(strtoupper($this->Db->ErrorMsg()), "WARNING"))
                  {
                      $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_inst'], $this->Db->ErrorMsg(), true); 
                      if (isset($_SESSION['scriptcase']['erro_handler']) && $_SESSION['scriptcase']['erro_handler']) 
                      { 
                          $this->sc_erro_insert = $this->Db->ErrorMsg();  
                          $this->nmgp_opcao     = 'refresh_insert';
                          $this->NM_rollback_db(); 
                          if ($this->NM_ajax_flag)
                          {
                              billing_item_form_pack_ajax_response();
                              exit; 
                          }
                      }  
                  }  
              }  
              if ('refresh_insert' != $this->nmgp_opcao)
              {
              }

              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['db_changed'] = true;

              $this->sc_evento = "insert"; 
              $this->sc_teve_incl = true; 
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['id2_'] = $this->id2_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['date_'] = $this->date_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['bcode_'] = $this->bcode_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['invoice_'] = $this->invoice_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['item_'] = $this->item_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['lin_'] = $this->lin_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['sq_'] = $this->sq_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['unit_'] = $this->unit_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['style_'] = $this->style_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['descrip_'] = $this->descrip_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['width_'] = $this->width_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['color_'] = $this->color_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['cust_order_'] = $this->cust_order_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['our_order_'] = $this->our_order_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['dye_order_'] = $this->dye_order_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['dye_lot_'] = $this->dye_lot_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['price_'] = $this->price_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['amount_'] = $this->amount_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['cases_'] = $this->cases_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['adate_'] = $this->adate_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['edate_'] = $this->edate_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['smit_'] = $this->smit_;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert]['memo_'] = $this->memo_;
              if (!empty($this->sc_force_zero))
              {
                  foreach ($this->sc_force_zero as $i_force_zero => $sc_force_zero_field)
                  {
                      eval('if ($this->' . $sc_force_zero_field . ' == 0) {$this->' . $sc_force_zero_field . ' = "";}');
                  }
              }
              $this->sc_force_zero = array();
              if (!empty($NM_val_null))
              {
                  foreach ($NM_val_null as $i_val_null => $sc_val_null_field)
                  {
                      eval('$this->' . $sc_val_null_field . ' = "";');
                  }
              }
              if (isset($this->invoice_)) { $this->nm_limpa_alfa($this->invoice_); }
              if (isset($this->item_)) { $this->nm_limpa_alfa($this->item_); }
              if (isset($this->bcode_)) { $this->nm_limpa_alfa($this->bcode_); }
              if (isset($this->lin_)) { $this->nm_limpa_alfa($this->lin_); }
              if (isset($this->sq_)) { $this->nm_limpa_alfa($this->sq_); }
              if (isset($this->style_)) { $this->nm_limpa_alfa($this->style_); }
              if (isset($this->width_)) { $this->nm_limpa_alfa($this->width_); }
              if (isset($this->color_)) { $this->nm_limpa_alfa($this->color_); }
              if (isset($this->cust_order_)) { $this->nm_limpa_alfa($this->cust_order_); }
              if (isset($this->our_order_)) { $this->nm_limpa_alfa($this->our_order_); }
              if (isset($this->price_)) { $this->nm_limpa_alfa($this->price_); }
              if (isset($this->unit_)) { $this->nm_limpa_alfa($this->unit_); }
              if (isset($this->amount_)) { $this->nm_limpa_alfa($this->amount_); }
              if (isset($this->descrip_)) { $this->nm_limpa_alfa($this->descrip_); }
              if (isset($this->dye_order_)) { $this->nm_limpa_alfa($this->dye_order_); }
              if (isset($this->dye_lot_)) { $this->nm_limpa_alfa($this->dye_lot_); }
              if (isset($this->cases_)) { $this->nm_limpa_alfa($this->cases_); }
              if (isset($this->smit_)) { $this->nm_limpa_alfa($this->smit_); }
              if (isset($this->memo_)) { $this->nm_limpa_alfa($this->memo_); }
              if (isset($this->id2_)) { $this->nm_limpa_alfa($this->id2_); }
              if (isset($this->Embutida_form) && $this->Embutida_form)
              {
                  $this->nm_guardar_campos();
                  $this->nm_formatar_campos();

                  $this->NM_ajax_info['fldList']['id2_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['id2_' . $this->nmgp_refresh_row]['valList'] = array($this->id2_);
                  $this->NM_ajax_info['fldList']['id2_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_id2_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['id2_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['id2_' . $this->nmgp_refresh_row] = "on";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['id2_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['id2_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['date_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['date_' . $this->nmgp_refresh_row]['valList'] = array($this->date_);
                  $this->NM_ajax_info['fldList']['date_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_date_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['date_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['date_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['date_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['date_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['bcode_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['bcode_' . $this->nmgp_refresh_row]['valList'] = array($this->bcode_);
                  $this->NM_ajax_info['fldList']['bcode_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_bcode_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['bcode_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['bcode_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['bcode_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['bcode_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['invoice_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['invoice_' . $this->nmgp_refresh_row]['valList'] = array($this->invoice_);
                  $this->NM_ajax_info['fldList']['invoice_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_invoice_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['invoice_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['invoice_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['invoice_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['invoice_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['item_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['item_' . $this->nmgp_refresh_row]['valList'] = array($this->item_);
                  $this->NM_ajax_info['fldList']['item_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_item_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['item_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['item_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['item_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['item_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['lin_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['lin_' . $this->nmgp_refresh_row]['valList'] = array($this->lin_);
                  $this->NM_ajax_info['fldList']['lin_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_lin_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['lin_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['lin_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['lin_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['lin_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['sq_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['sq_' . $this->nmgp_refresh_row]['valList'] = array($this->sq_);
                  $this->NM_ajax_info['fldList']['sq_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_sq_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['sq_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['sq_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['sq_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['sq_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['unit_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['unit_' . $this->nmgp_refresh_row]['valList'] = array($this->unit_);
                  $this->NM_ajax_info['fldList']['unit_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_unit_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['unit_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['unit_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['unit_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['unit_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['style_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['style_' . $this->nmgp_refresh_row]['valList'] = array($this->style_);
                  $this->NM_ajax_info['fldList']['style_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_style_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['style_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['style_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['style_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['style_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['descrip_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['descrip_' . $this->nmgp_refresh_row]['valList'] = array($this->descrip_);
                  $this->NM_ajax_info['fldList']['descrip_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_descrip_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['descrip_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['descrip_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['descrip_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['descrip_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['width_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['width_' . $this->nmgp_refresh_row]['valList'] = array($this->width_);
                  $this->NM_ajax_info['fldList']['width_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_width_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['width_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['width_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['width_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['width_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['color_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['color_' . $this->nmgp_refresh_row]['valList'] = array($this->color_);
                  $this->NM_ajax_info['fldList']['color_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_color_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['color_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['color_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['color_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['color_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['cust_order_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['cust_order_' . $this->nmgp_refresh_row]['valList'] = array($this->cust_order_);
                  $this->NM_ajax_info['fldList']['cust_order_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_cust_order_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['cust_order_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['cust_order_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['cust_order_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['cust_order_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['our_order_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['our_order_' . $this->nmgp_refresh_row]['valList'] = array($this->our_order_);
                  $this->NM_ajax_info['fldList']['our_order_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_our_order_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['our_order_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['our_order_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['our_order_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['our_order_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['dye_order_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['dye_order_' . $this->nmgp_refresh_row]['valList'] = array($this->dye_order_);
                  $this->NM_ajax_info['fldList']['dye_order_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_dye_order_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['dye_order_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['dye_order_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['dye_order_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['dye_order_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['dye_lot_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['dye_lot_' . $this->nmgp_refresh_row]['valList'] = array($this->dye_lot_);
                  $this->NM_ajax_info['fldList']['dye_lot_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_dye_lot_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['dye_lot_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['dye_lot_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['dye_lot_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['dye_lot_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['price_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['price_' . $this->nmgp_refresh_row]['valList'] = array($this->price_);
                  $this->NM_ajax_info['fldList']['price_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_price_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['price_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['price_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['price_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['price_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['amount_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['amount_' . $this->nmgp_refresh_row]['valList'] = array($this->amount_);
                  $this->NM_ajax_info['fldList']['amount_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_amount_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['amount_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['amount_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['amount_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['amount_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['cases_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['cases_' . $this->nmgp_refresh_row]['valList'] = array($this->cases_);
                  $this->NM_ajax_info['fldList']['cases_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_cases_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['cases_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['cases_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['cases_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['cases_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['adate_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['adate_' . $this->nmgp_refresh_row]['valList'] = array($this->adate_);
                  $this->NM_ajax_info['fldList']['adate_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_adate_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['adate_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['adate_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['adate_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['adate_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['edate_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['edate_' . $this->nmgp_refresh_row]['valList'] = array($this->edate_);
                  $this->NM_ajax_info['fldList']['edate_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_edate_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['edate_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['edate_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['edate_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['edate_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->NM_ajax_info['fldList']['smit_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['smit_' . $this->nmgp_refresh_row]['valList'] = array($this->smit_);
                  $this->NM_ajax_info['fldList']['smit_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_smit_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['smit_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['smit_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['smit_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['smit_' . $this->nmgp_refresh_row] = "on";
                      }
                  }

                  $this->memo_    = str_replace(array('\r\n', '\n\r', '\n', '\r'), array("\r\n", "\n\r", "\n", "\r"), $this->memo_);
                  $tmpLabel_memo_ = nl2br($this->memo_);
                  $this->NM_ajax_info['fldList']['memo_' . $this->nmgp_refresh_row]['type']    = 'text';
                  $this->NM_ajax_info['fldList']['memo_' . $this->nmgp_refresh_row]['valList'] = array($this->memo_);
                  $this->NM_ajax_info['fldList']['memo_' . $this->nmgp_refresh_row]['labList'] = array($tmpLabel_memo_);

                  if ((isset($this->Embutida_form) && $this->Embutida_form) && (!isset($this->Embutida_ronly) || !$this->Embutida_ronly))
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['memo_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['memo_' . $this->nmgp_refresh_row] = "off";
                      }
                  }
                  elseif (isset($this->Embutida_ronly) && $this->Embutida_ronly)
                  {
                      if (!isset($this->NM_ajax_info['readOnly']['memo_' . $this->nmgp_refresh_row]))
                      {
                          $this->NM_ajax_info['readOnly']['memo_' . $this->nmgp_refresh_row] = "on";
                      }
                  }


                  $this->nm_tira_formatacao();
                  $this->nm_converte_datas();

                  $this->NM_ajax_info['closeLine'] = $this->nmgp_refresh_row;
              }
              if ('refresh_insert' != $this->nmgp_opcao && (!isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_redir_insert']) || $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_redir_insert'] != "S"))
              {
              $this->nmgp_opcao = "novo"; 
              }
              $this->nm_flag_iframe = true;
          } 
          if ($this->lig_edit_lookup)
          {
              $this->lig_edit_lookup_call = true;
          }
      } 
      if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['decimal_db'] == ",") 
      {
          $this->nm_tira_aspas_decimal();
      }
      if ($this->nmgp_opcao == "excluir") 
      { 
          $this->invoice_ = substr($this->Db->qstr($this->invoice_), 1, -1); 
          $this->id2_ = substr($this->Db->qstr($this->id2_), 1, -1); 

          $bDelecaoOk = true;
          $sMsgErro   = '';

          if ($bDelecaoOk)
          {

          if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_"; 
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_"; 
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_"; 
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_"; 
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          else  
          {
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = "select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_"; 
              $rs1 = $this->Db->Execute("select count(*) from " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
          }  
          if ($rs1 === false)  
          { 
              $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dbas'], $this->Db->ErrorMsg()); 
              exit; 
          }  
          if ($rs1 === false)  
          { 
              $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dbas'], $this->Db->ErrorMsg()); 
              exit; 
          }  
          $tmp_result = (int) $rs1->fields[0]; 
          if ($tmp_result != 1) 
          { 
              $this->Campos_Mens_erro = $this->Ini->Nm_lang['lang_errm_dele_nfnd']; 
              $this->nmgp_opcao = "nada"; 
              $this->sc_evento = 'delete';
          } 
          else 
          { 
              $rs1->Close(); 
              if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
              {
                  $_SESSION['scriptcase']['sc_sql_ult_comando'] = "DELETE FROM " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "; 
                  $rs = $this->Db->Execute("DELETE FROM " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
              }  
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
              {
                  $_SESSION['scriptcase']['sc_sql_ult_comando'] = "DELETE FROM " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "; 
                  $rs = $this->Db->Execute("DELETE FROM " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
              }  
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
              {
                  $_SESSION['scriptcase']['sc_sql_ult_comando'] = "DELETE FROM " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "; 
                  $rs = $this->Db->Execute("DELETE FROM " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
              }  
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
              {
                  $_SESSION['scriptcase']['sc_sql_ult_comando'] = "DELETE FROM " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "; 
                  $rs = $this->Db->Execute("DELETE FROM " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
              }  
              else  
              {
                  $_SESSION['scriptcase']['sc_sql_ult_comando'] = "DELETE FROM " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "; 
                  $rs = $this->Db->Execute("DELETE FROM " . $this->Ini->nm_tabela . " where INVOICE = '$this->invoice_' and ID2 = $this->id2_ "); 
              }  
              if ($rs === false) 
              { 
                  $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dele'], $this->Db->ErrorMsg(), true); 
                  if (isset($_SESSION['scriptcase']['erro_handler']) && $_SESSION['scriptcase']['erro_handler']) 
                  { 
                      $this->sc_erro_delete = $this->Db->ErrorMsg();  
                      $this->NM_rollback_db(); 
                      if ($this->NM_ajax_flag)
                      {
                          billing_item_form_pack_ajax_response();
                          exit; 
                      }
                  } 
              } 
              $this->sc_evento = "delete"; 
              $this->nmgp_opcao = "avanca"; 
              $this->nm_flag_iframe = true;
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start']--; 
              if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] < 0)
              {
                  $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = 0; 
              }

              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['db_changed'] = true;

              $this->sc_teve_excl = true; 
              if ($this->lig_edit_lookup)
              {
                  $this->lig_edit_lookup_call = true;
              }
          }

          }
          else
          {
              $this->sc_evento = "delete"; 
              $this->nmgp_opcao = "igual"; 
              $this->Erro->mensagem(__FILE__, __LINE__, "critica", $sMsgErro); 
          }

      }  
      if (!empty($this->sc_force_zero))
      {
          foreach ($this->sc_force_zero as $i_force_zero => $sc_force_zero_field)
          {
              eval('if ($this->' . $sc_force_zero_field . ' == 0) {$this->' . $sc_force_zero_field . ' = "";}');
          }
      }
      $this->sc_force_zero = array();
      if (!empty($NM_val_null))
      {
          foreach ($NM_val_null as $i_val_null => $sc_val_null_field)
          {
              eval('$this->' . $sc_val_null_field . ' = "";');
          }
      }
      if ($salva_opcao == "incluir" && $GLOBALS["erro_incl"] != 1) 
      { 
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['parms'] = "invoice_?#?$this->invoice_?@?id2_?#?$this->id2_?@?"; 
      }
      if ($this->sc_evento != "insert" && $this->sc_evento != "update" && $this->sc_evento != "delete")
      { 
          $this->invoice_ = substr($this->Db->qstr($this->invoice_), 1, -1); 
          $this->id2_ = substr($this->Db->qstr($this->id2_), 1, -1); 
      } 
   }
//---------- 
   function nm_select_banco() 
   { 
      global $nm_form_submit, $sc_seq_vert, $sc_check_incl, $teste_validade, $sc_where;
 
      if (isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['rows']) && !empty($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['rows']))
      {
          $this->sc_max_reg = $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['rows'];
      } 
      if (isset($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['rows_ins']) && !empty($_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['rows_ins']))
      {
          $this->sc_max_reg_incl = $_SESSION['scriptcase']['sc_apl_conf']['billing_item_form']['rows_ins'];
      } 
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_qtd_reg']) && '' != $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_qtd_reg'])
      {
          $this->sc_max_reg = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['embutida_liga_qtd_reg'];
      }
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_max_reg']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_max_reg'] > 0)
      {
          $this->sc_max_reg = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_max_reg'];
      } 
      $_SESSION['scriptcase']['sc_sql_ult_conexao'] = ''; 
      $GLOBALS["NM_ERRO_IBASE"] = 0;  
      $this->form_vert_billing_item_form = array();
      if ($this->nmgp_opcao != "novo") 
      { 
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['parms'] = ""; 
      } 
      if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_ibase))
      { 
          $GLOBALS["NM_ERRO_IBASE"] = 1;  
      } 
      if ($this->sc_teve_excl)
      {
          $this->nmgp_opcao = "avanca";
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] -= $this->sc_max_reg;
      }
      if (!isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start']) || empty($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start']))
      {
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = 0;
      }
      if (isset($this->NM_where_filter))
      {
          $this->NM_where_filter = str_replace("@percent@", "%", $this->NM_where_filter);
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter'] = trim($this->NM_where_filter);
          if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['total']))
          {
              unset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['total']);
          }
      }
      $sc_where_filter = '';
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter_form']) && '' != $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter_form'])
      {
          $sc_where_filter = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter_form'];
      }
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter']) && '' != $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter'])
      {
          if (empty($sc_where_filter))
          {
              $sc_where_filter = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter'];
          }
          else
          {
              $sc_where_filter .= " and (" . $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter'] . ")";
          }
      }
      $sc_where = "";
      if ('' != $sc_where_filter)
      {
          $sc_where = (isset($sc_where) && '' != $sc_where) ? $sc_where . ' and (' . $sc_where_filter . ')' : ' where ' . $sc_where_filter;
      }
      if (isset($this->NM_ajax_opcao) && 'backup_line' == $this->NM_ajax_opcao)
      {
          if ('' == $sc_where)
          {
              $sc_where = " where (";
          }
          else
          {
              $sc_where .= " and (";
          }
          $sc_where .= "ID2_ = " . $this->id2_;
          $sc_where .= " and ";
          $sc_where .= "INVOICE_ = '" . $this->invoice_ . "'";
          $sc_where .= ")";
      }
      if ('total' != $this->form_paginacao)
      {
      if ((isset($_POST['master_nav']) && 'on' == $_POST['master_nav']) || !isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['total']) || $this->sc_teve_excl || $this->sc_teve_incl)
      { 
          $nmgp_select = "SELECT count(*) from " . $this->Ini->nm_tabela . $sc_where; 
          $_SESSION['scriptcase']['sc_sql_ult_comando'] = $nmgp_select; 
          $rt = $this->Db->Execute($nmgp_select) ; 
          if ($rt === false && !$rt->EOF && $GLOBALS["NM_ERRO_IBASE"] != 1) 
          { 
              $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dber'], $this->Db->ErrorMsg()); 
              exit ; 
          }  
          $qt_geral_reg_billing_item_form = isset($rt->fields[0]) ? $rt->fields[0] - 1 : 0; 
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['total'] = $qt_geral_reg_billing_item_form;
          if (!$this->sc_teve_excl && !$this->sc_teve_incl) 
          { 
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = 0; 
          } 
          $rt->Close(); 
          if ($this->nmgp_opcao == "igual" && isset($this->NM_btn_navega) && 'S' == $this->NM_btn_navega && !empty($this->invoice_) && !empty($this->id2_))
          {
              $Reg_OK      = false;
              $Count_start = -1;
              $sc_order_by = "";
              if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
              {
                  $Sel_Chave = "INVOICE, ID2"; 
              }
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
              {
                  $Sel_Chave = "INVOICE, ID2"; 
              }
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
              {
                  $Sel_Chave = "INVOICE, ID2"; 
              }
              else  
              {
                  $Sel_Chave = "INVOICE, ID2"; 
              }
              $nmgp_select = "SELECT " . $Sel_Chave . " from " . $this->Ini->nm_tabela . $sc_where; 
              $sc_order_by = "INVOICE, ID2";
              $sc_order_by = str_replace("order by ", "", $sc_order_by);
              $sc_order_by = str_replace("ORDER BY ", "", trim($sc_order_by));
              if (!empty($sc_order_by))
              {
                  $nmgp_select .= " order by $sc_order_by "; 
              }
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = $nmgp_select; 
              $rt = $this->Db->Execute($nmgp_select) ; 
              if ($rt === false && !$rt->EOF && $GLOBALS["NM_ERRO_IBASE"] != 1) 
              { 
                  $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dber'], $this->Db->ErrorMsg()); 
                  exit ; 
              }  
              while (!$rt->EOF && !$Reg_OK)
              { 
                  if ($rt->fields[0] == $this->invoice_ && $rt->fields[1] == $this->id2_)
                  { 
                      $Reg_OK = true;
                  }  
                  $Count_start++;
                  $rt->MoveNext();
              }  
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = $Count_start;
              $rt->Close(); 
          }
      } 
      else 
      { 
          $qt_geral_reg_billing_item_form = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['total'];
      } 
      if ($this->nmgp_opcao == "inicio" || $this->nmgp_opcao == "ordem") 
      { 
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = 0; 
      } 
      if ($this->nmgp_opcao == "navpage" && ($this->nmgp_ordem - 1) <= $qt_geral_reg_billing_item_form) 
      { 
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = $this->nmgp_ordem - 1; 
      } 
      if ($this->nmgp_opcao == "avanca")  
      { 
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] += $this->sc_max_reg; 
          if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] > $qt_geral_reg_billing_item_form)
          {
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = $qt_geral_reg_billing_item_form - $this->sc_max_reg; 
              if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] < 0)
              {
                  $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = 0; 
              }
          }
      } 
      if ($this->nmgp_opcao == "retorna") 
      { 
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] -= $this->sc_max_reg; 
          if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] < 0)
          {
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = 0; 
          }
      } 
      if ($this->nmgp_opcao == "final") 
      { 
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = ($qt_geral_reg_billing_item_form + 1) - $this->sc_max_reg; 
          if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] < 0)
          {
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] = 0; 
          }
      } 
      }
      $sc_order_by = "";
      $sc_order_by = "INVOICE, ID2";
      $sc_order_by = str_replace("order by ", "", $sc_order_by);
      $sc_order_by = str_replace("ORDER BY ", "", trim($sc_order_by));
      if (!empty($sc_order_by))
      {
          $sc_order_by = " order by $sc_order_by "; 
      }
      if ($this->nmgp_opcao == "ordem") 
      { 
          if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['ordem_cmp'] != $this->nmgp_ordem)
          {
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['ordem_cmp'] = $this->nmgp_ordem; 
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['ordem_ord'] = ' asc'; 
          }
          elseif ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['ordem_ord'] == ' asc')
          {
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['ordem_ord'] = ' desc'; 
          }
          else
          {
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['ordem_ord'] = ' asc'; 
          }
      } 
      if (!empty($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['ordem_cmp'])) 
      { 
          $sc_order_by = " order by " . $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['ordem_cmp'] . $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['ordem_ord']; 
      } 
      if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_sybase))
      { 
          $nmgp_select = "SELECT INVOICE, ITEM, str_replace (convert(char(10),`DATE`,102), '.', '-') + ' ' + convert(char(8),`DATE`,20), BCODE, LIN, SQ, STYLE, WIDTH, COLOR, CUST_ORDER, OUR_ORDER, PRICE, UNIT, AMOUNT, DESCRIP, DYE_ORDER, DYE_LOT, CASES, COST, COST_YD, GP, GP_YD, PC, str_replace (convert(char(10),ADATE,102), '.', '-') + ' ' + convert(char(8),ADATE,20), str_replace (convert(char(10),EDATE,102), '.', '-') + ' ' + convert(char(8),EDATE,20), SMIT, MEMO, ID2 from " . $this->Ini->nm_tabela . $sc_where . $sc_order_by; 
      } 
      elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
      { 
          $nmgp_select = "SELECT INVOICE, ITEM, convert(char(23),`DATE`,121), BCODE, LIN, SQ, STYLE, WIDTH, COLOR, CUST_ORDER, OUR_ORDER, PRICE, UNIT, AMOUNT, DESCRIP, DYE_ORDER, DYE_LOT, CASES, COST, COST_YD, GP, GP_YD, PC, convert(char(23),ADATE,121), convert(char(23),EDATE,121), SMIT, MEMO, ID2 from " . $this->Ini->nm_tabela . $sc_where . $sc_order_by; 
      } 
      elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
      { 
          $nmgp_select = "SELECT INVOICE, ITEM, `DATE`, BCODE, LIN, SQ, STYLE, WIDTH, COLOR, CUST_ORDER, OUR_ORDER, PRICE, UNIT, AMOUNT, DESCRIP, DYE_ORDER, DYE_LOT, CASES, COST, COST_YD, GP, GP_YD, PC, ADATE, EDATE, SMIT, MEMO, ID2 from " . $this->Ini->nm_tabela . $sc_where . $sc_order_by; 
      } 
      elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_informix))
      { 
          $nmgp_select = "SELECT INVOICE, ITEM, EXTEND(`DATE`, YEAR TO DAY), BCODE, LIN, SQ, STYLE, WIDTH, COLOR, CUST_ORDER, OUR_ORDER, PRICE, UNIT, AMOUNT, DESCRIP, DYE_ORDER, DYE_LOT, CASES, COST, COST_YD, GP, GP_YD, PC, EXTEND(ADATE, YEAR TO DAY), EXTEND(EDATE, YEAR TO DAY), SMIT, MEMO, ID2 from " . $this->Ini->nm_tabela . $sc_where . $sc_order_by; 
      } 
      else 
      { 
          $nmgp_select = "SELECT INVOICE, ITEM, `DATE`, BCODE, LIN, SQ, STYLE, WIDTH, COLOR, CUST_ORDER, OUR_ORDER, PRICE, UNIT, AMOUNT, DESCRIP, DYE_ORDER, DYE_LOT, CASES, COST, COST_YD, GP, GP_YD, PC, ADATE, EDATE, SMIT, MEMO, ID2 from " . $this->Ini->nm_tabela . $sc_where . $sc_order_by; 
      } 
      if ($this->nmgp_opcao != "novo") 
      { 
      if (isset($this->NM_ajax_opcao) && 'backup_line' == $this->NM_ajax_opcao)
      {
          $_SESSION['scriptcase']['sc_sql_ult_comando'] = $nmgp_select;
          $rs = $this->Db->Execute($nmgp_select) ;
      }
      elseif ('total' == $this->form_paginacao)
      {
          $_SESSION['scriptcase']['sc_sql_ult_comando'] = $nmgp_select; 
          $rs = $this->Db->Execute($nmgp_select) ; 
      }
      else
      {
          if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe'] == "F" || $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe'] == "R")
          { 
              $_SESSION['scriptcase']['sc_sql_ult_comando'] = $nmgp_select; 
              $rs = $this->Db->Execute($nmgp_select) ; 
          } 
          else 
          { 
              if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mysql) || in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres) || in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle) || in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_ibase) || in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_db2))
              { 
                  $_SESSION['scriptcase']['sc_sql_ult_comando'] = "SelectLimit($nmgp_select, $this->sc_max_reg, " . $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] . ")" ; 
                  $rs = $this->Db->SelectLimit($nmgp_select, $this->sc_max_reg, $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start']) ; 
              } 
              elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
              { 
                  $_SESSION['scriptcase']['sc_sql_ult_comando'] = "SelectLimit($nmgp_select, $this->sc_max_reg, " . $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] . ")" ; 
                  $rs = $this->Db->SelectLimit($nmgp_select, $this->sc_max_reg, $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start']) ; 
              } 
              else  
              { 
                  $_SESSION['scriptcase']['sc_sql_ult_comando'] = $nmgp_select; 
                  $rs = $this->Db->Execute($nmgp_select) ; 
                  if (!$rs === false && !$rs->EOF) 
                  { 
                      $rs->Move($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start']) ;  
                  } 
              } 
          } 
      }
          if ($rs === false && !$rs->EOF && $GLOBALS["NM_ERRO_IBASE"] != 1) 
          { 
              $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dber'], $this->Db->ErrorMsg()); 
              exit ; 
          }  
          if ($rs === false && $GLOBALS["NM_ERRO_IBASE"] == 1) 
          { 
              $GLOBALS["NM_ERRO_IBASE"] = 0; 
              $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_nfnd_extr'], $this->Db->ErrorMsg()); 
              exit ; 
          }  
          if ($rs->EOF && !$this->proc_fast_search) 
          { 
              $this->nm_flag_saida_novo = "S"; 
              $this->nmgp_opcao = "novo"; 
              $this->sc_evento  = "novo"; 
              $this->nmgp_botoes['sc_btn_0'] = "off";
              if ($this->aba_iframe)
              {
                  $this->nmgp_botoes['exit'] = 'off';
              }
          } 
          if ($rs->EOF && $this->nmgp_botoes['new'] != "on" && !$this->proc_fast_search)
          {
              $this->nmgp_form_empty = true;
          }
          if ($rs->EOF)
          {
              $sc_seq_vert = 0; 
          }
          else
          {
              $sc_seq_vert = 1; 
          }
          if ('total' == $this->form_paginacao)
          {
              $bPagTest = true;
          }
          else
          {
              $bPagTest = $sc_seq_vert <= $this->sc_max_reg;
          }
          while (!$rs->EOF && $bPagTest)
          { 
              if (isset($this->NM_ajax_opcao) && 'backup_line' == $this->NM_ajax_opcao)
              {
                  $guard_seq_vert = $sc_seq_vert;
                  $sc_seq_vert    = $this->nmgp_refresh_row;
              }
              if ('total' != $this->form_paginacao)
              {
              if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe'] == "F" || $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe'] == "R")
              { 
                  $this->sc_max_reg++;
              } 
              }
              $this->invoice_ = $rs->fields[0] ; 
              $this->nmgp_dados_select['invoice_'] = $this->invoice_;
              $this->item_ = $rs->fields[1] ; 
              $this->nmgp_dados_select['item_'] = $this->item_;
              $this->date_ = $rs->fields[2] ; 
              $this->nmgp_dados_select['date_'] = $this->date_;
              $this->bcode_ = $rs->fields[3] ; 
              $this->nmgp_dados_select['bcode_'] = $this->bcode_;
              $this->lin_ = trim($rs->fields[4]) ; 
              $this->nmgp_dados_select['lin_'] = $this->lin_;
              $this->sq_ = trim($rs->fields[5]) ; 
              $this->nmgp_dados_select['sq_'] = $this->sq_;
              $this->style_ = $rs->fields[6] ; 
              $this->nmgp_dados_select['style_'] = $this->style_;
              $this->width_ = $rs->fields[7] ; 
              $this->nmgp_dados_select['width_'] = $this->width_;
              $this->color_ = $rs->fields[8] ; 
              $this->nmgp_dados_select['color_'] = $this->color_;
              $this->cust_order_ = $rs->fields[9] ; 
              $this->nmgp_dados_select['cust_order_'] = $this->cust_order_;
              $this->our_order_ = $rs->fields[10] ; 
              $this->nmgp_dados_select['our_order_'] = $this->our_order_;
              $this->price_ = trim($rs->fields[11]) ; 
              $this->nmgp_dados_select['price_'] = $this->price_;
              $this->unit_ = $rs->fields[12] ; 
              $this->nmgp_dados_select['unit_'] = $this->unit_;
              $this->amount_ = trim($rs->fields[13]) ; 
              $this->nmgp_dados_select['amount_'] = $this->amount_;
              $this->descrip_ = $rs->fields[14] ; 
              $this->nmgp_dados_select['descrip_'] = $this->descrip_;
              $this->dye_order_ = $rs->fields[15] ; 
              $this->nmgp_dados_select['dye_order_'] = $this->dye_order_;
              $this->dye_lot_ = $rs->fields[16] ; 
              $this->nmgp_dados_select['dye_lot_'] = $this->dye_lot_;
              $this->cases_ = $rs->fields[17] ; 
              $this->nmgp_dados_select['cases_'] = $this->cases_;
              $this->cost_ = trim($rs->fields[18]) ; 
              $this->nmgp_dados_select['cost_'] = $this->cost_;
              $this->cost_yd_ = trim($rs->fields[19]) ; 
              $this->nmgp_dados_select['cost_yd_'] = $this->cost_yd_;
              $this->gp_ = trim($rs->fields[20]) ; 
              $this->nmgp_dados_select['gp_'] = $this->gp_;
              $this->gp_yd_ = trim($rs->fields[21]) ; 
              $this->nmgp_dados_select['gp_yd_'] = $this->gp_yd_;
              $this->pc_ = trim($rs->fields[22]) ; 
              $this->nmgp_dados_select['pc_'] = $this->pc_;
              $this->adate_ = $rs->fields[23] ; 
              $this->nmgp_dados_select['adate_'] = $this->adate_;
              $this->edate_ = $rs->fields[24] ; 
              $this->nmgp_dados_select['edate_'] = $this->edate_;
              $this->smit_ = $rs->fields[25] ; 
              $this->nmgp_dados_select['smit_'] = $this->smit_;
              $this->memo_ = $rs->fields[26] ; 
              $this->nmgp_dados_select['memo_'] = $this->memo_;
              $this->id2_ = $rs->fields[27] ; 
              $this->nmgp_dados_select['id2_'] = $this->id2_;
              $GLOBALS["NM_ERRO_IBASE"] = 0; 
              $this->nm_troca_decimal(",", ".");
              $this->item_ = (string)$this->item_; 
              $this->lin_ = (strpos(strtolower($this->lin_), "e")) ? (float)$this->lin_ : $this->lin_; 
              $this->lin_ = (string)$this->lin_; 
              $this->sq_ = (strpos(strtolower($this->sq_), "e")) ? (float)$this->sq_ : $this->sq_; 
              $this->sq_ = (string)$this->sq_; 
              $this->price_ = (strpos(strtolower($this->price_), "e")) ? (float)$this->price_ : $this->price_; 
              $this->price_ = (string)$this->price_; 
              $this->amount_ = (strpos(strtolower($this->amount_), "e")) ? (float)$this->amount_ : $this->amount_; 
              $this->amount_ = (string)$this->amount_; 
              $this->cost_ = (strpos(strtolower($this->cost_), "e")) ? (float)$this->cost_ : $this->cost_; 
              $this->cost_ = (string)$this->cost_; 
              $this->cost_yd_ = (strpos(strtolower($this->cost_yd_), "e")) ? (float)$this->cost_yd_ : $this->cost_yd_; 
              $this->cost_yd_ = (string)$this->cost_yd_; 
              $this->gp_ = (strpos(strtolower($this->gp_), "e")) ? (float)$this->gp_ : $this->gp_; 
              $this->gp_ = (string)$this->gp_; 
              $this->gp_yd_ = (strpos(strtolower($this->gp_yd_), "e")) ? (float)$this->gp_yd_ : $this->gp_yd_; 
              $this->gp_yd_ = (string)$this->gp_yd_; 
              $this->pc_ = (strpos(strtolower($this->pc_), "e")) ? (float)$this->pc_ : $this->pc_; 
              $this->pc_ = (string)$this->pc_; 
              $this->id2_ = (string)$this->id2_; 
              if (empty($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['parms'])) 
              { 
                  $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['parms'] = "invoice_?#?$this->invoice_?@?id2_?#?$this->id2_?@?";
              } 
              $this->nm_proc_onload_record($sc_seq_vert);
//
//-- 
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['dados_select'][$sc_seq_vert] = $this->nmgp_dados_select;
              $this->nm_guardar_campos();
              $this->nm_formatar_campos();
             $this->form_vert_billing_item_form[$sc_seq_vert]['id2_'] =  $this->id2_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['date_'] =  $this->date_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['bcode_'] =  $this->bcode_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['invoice_'] =  $this->invoice_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['item_'] =  $this->item_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['lin_'] =  $this->lin_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['sq_'] =  $this->sq_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['unit_'] =  $this->unit_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['style_'] =  $this->style_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['descrip_'] =  $this->descrip_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['width_'] =  $this->width_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['color_'] =  $this->color_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cust_order_'] =  $this->cust_order_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['our_order_'] =  $this->our_order_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['dye_order_'] =  $this->dye_order_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['dye_lot_'] =  $this->dye_lot_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['price_'] =  $this->price_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['amount_'] =  $this->amount_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cases_'] =  $this->cases_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['adate_'] =  $this->adate_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['edate_'] =  $this->edate_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['smit_'] =  $this->smit_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['memo_'] =  $this->memo_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cost_'] =  $this->cost_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cost_yd_'] =  $this->cost_yd_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['gp_'] =  $this->gp_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['gp_yd_'] =  $this->gp_yd_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['pc_'] =  $this->pc_; 
              $sc_seq_vert++; 
              $rs->MoveNext() ; 
              if (isset($this->NM_ajax_opcao) && 'backup_line' == $this->NM_ajax_opcao)
              {
                  $sc_seq_vert = $guard_seq_vert;
              }
              if ('total' != $this->form_paginacao)
              {
                  $bPagTest = $sc_seq_vert <= $this->sc_max_reg;
              }
          } 
          ksort ($this->form_vert_billing_item_form); 
          $rs->Close(); 
          $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_qtd'] = $sc_seq_vert + $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] - 1;
          $this->NM_ajax_info['navSummary']['reg_ini'] = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] + 1; 
          $this->NM_ajax_info['navSummary']['reg_qtd'] = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_qtd']; 
          $this->NM_ajax_info['navSummary']['reg_tot'] = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['total'] + 1; 
          $this->NM_gera_nav_page(); 
          $this->NM_ajax_info['navPage'] = $this->SC_nav_page; 
          if (!$this->NM_ajax_flag || 'backup_line' != $this->NM_ajax_opcao)
          {
              $this->Nav_permite_ret = 0 != $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'];
              $this->Nav_permite_ava = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] < (($qt_geral_reg_billing_item_form + 1) - $this->sc_max_reg);
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opcao'] = '';
          }
      } 
      if ($this->nmgp_opcao == "novo") 
      { 
          $sc_seq_vert = 1; 
          $sc_check_incl = array(); 
          if ($this->NM_ajax_flag && 'add_new_line' == $this->NM_ajax_opcao) 
          { 
              $sc_seq_vert = $this->sc_seq_vert; 
              $this->sc_evento = "novo"; 
              $this->sc_max_reg_incl = $this->sc_seq_vert; 
          } 
          elseif ($this->Embutida_form) 
          { 
              $this->sc_max_reg_incl = 0; 
          } 
          while ($sc_seq_vert <= $this->sc_max_reg_incl) 
          { 
              $this->invoice_ = "";  
              $this->item_ = "";  
              $this->date_ = "";  
              $this->bcode_ = "";  
              $this->lin_ = "";  
              $this->sq_ = "";  
              $this->style_ = "";  
              $this->width_ = "";  
              $this->color_ = "";  
              $this->cust_order_ = "";  
              $this->our_order_ = "";  
              $this->price_ = "";  
              $this->unit_ = "";  
              $this->amount_ = "";  
              $this->descrip_ = "";  
              $this->dye_order_ = "";  
              $this->dye_lot_ = "";  
              $this->cases_ = "";  
              $this->adate_ = "";  
              $this->edate_ = "";  
              $this->smit_ = "";  
              $this->memo_ = "";  
              $this->id2_ = "";  
              $this->nm_proc_onload_record($sc_seq_vert);
              if (($this->Embutida_form || $this->Embutida_multi) && isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['foreign_key']) && !empty($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['foreign_key']))
              {
                  foreach ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['foreign_key'] as $sFKName => $sFKValue)
                  {
                      if (isset($this->sc_conv_var[$sFKName]))
                      {
                          $sFKName = $this->sc_conv_var[$sFKName];
                      }
                      eval("\$this->" . $sFKName . " = \"" . $sFKValue . "\";");
                  }
              }
              $this->nm_guardar_campos();
              $this->nm_formatar_campos();
             $this->form_vert_billing_item_form[$sc_seq_vert]['id2_'] =  $this->id2_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['date_'] =  $this->date_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['bcode_'] =  $this->bcode_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['invoice_'] =  $this->invoice_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['item_'] =  $this->item_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['lin_'] =  $this->lin_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['sq_'] =  $this->sq_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['unit_'] =  $this->unit_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['style_'] =  $this->style_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['descrip_'] =  $this->descrip_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['width_'] =  $this->width_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['color_'] =  $this->color_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cust_order_'] =  $this->cust_order_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['our_order_'] =  $this->our_order_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['dye_order_'] =  $this->dye_order_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['dye_lot_'] =  $this->dye_lot_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['price_'] =  $this->price_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['amount_'] =  $this->amount_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cases_'] =  $this->cases_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['adate_'] =  $this->adate_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['edate_'] =  $this->edate_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['smit_'] =  $this->smit_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['memo_'] =  $this->memo_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cost_'] =  $this->cost_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['cost_yd_'] =  $this->cost_yd_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['gp_'] =  $this->gp_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['gp_yd_'] =  $this->gp_yd_; 
             $this->form_vert_billing_item_form[$sc_seq_vert]['pc_'] =  $this->pc_; 
              $sc_seq_vert++; 
          } 
      }  
  }
   function NM_gera_nav_page() 
   {
       $this->SC_nav_page = "";
       $Reg_Page   = $this->sc_max_reg;
       $Max_link   = 5;
       $Mid_link   = ceil($Max_link / 2);
       $Corr_link  = (($Max_link % 2) == 0) ? 0 : 1;
       $rec_tot    = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['total'] + 1;
       $rec_fim    = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['reg_start'] + $this->sc_max_reg;
       $rec_fim    = ($rec_fim > $rec_tot) ? $rec_tot : $rec_fim;
       if ($rec_tot == 0)
       {
           return;
       }
       $Qtd_Pages  = ceil($rec_tot / $Reg_Page);
       $Page_Atu   = ceil($rec_fim / $Reg_Page);
       $Link_ini   = 1;
       if ($Page_Atu > $Max_link)
       {
           $Link_ini = $Page_Atu - $Mid_link + $Corr_link;
       }
       elseif ($Page_Atu > $Mid_link)
       {
           $Link_ini = $Page_Atu - $Mid_link + $Corr_link;
       }
       if (($Qtd_Pages - $Link_ini) < $Max_link)
       {
           $Link_ini = ($Qtd_Pages - $Max_link) + 1;
       }
       if ($Link_ini < 1)
       {
           $Link_ini = 1;
       }
       for ($x = 0; $x < $Max_link && $Link_ini <= $Qtd_Pages; $x++)
       {
           $rec = (($Link_ini - 1) * $Reg_Page) + 1;
           if ($Link_ini == $Page_Atu)
           {
               $this->SC_nav_page .= '<span class="scFormToolbarNavOpen" style="vertical-align: middle;">' . $Link_ini . '</span>';
           }
           else
           {
               $this->SC_nav_page .= '<a class="scFormToolbarNav" style="vertical-align: middle;" href="javascript: nm_navpage(' . $rec . ')">' . $Link_ini . '</a>';
           }
           $Link_ini++;
           if (($x + 1) < $Max_link && $Link_ini <= $Qtd_Pages && '' != $this->Ini->Str_toolbarnav_separator && @is_file($this->Ini->root . $this->Ini->path_img_global . $this->Ini->Str_toolbarnav_separator))
           {
               $this->SC_nav_page .= '<img src="' . $this->Ini->path_img_global . $this->Ini->Str_toolbarnav_separator . '" align="absmiddle" style="vertical-align: middle;">';
           }
       }
   }
//
 function nm_gera_html()
 {
    global
           $nm_url_saida, $nmgp_url_saida, $nm_saida_global, $nm_apl_dependente, $glo_subst, $sc_check_excl, $sc_check_incl, $nmgp_num_form, $NM_run_iframe;
     if ($this->Embutida_proc)
     {
         return;
     }
     if ($this->nmgp_form_show == 'off')
     {
         exit;
     }
     $HTTP_REFERER = (isset($_SERVER['HTTP_REFERER'])) ? $_SERVER['HTTP_REFERER'] : ""; 
     $_SESSION['scriptcase']['sc_sql_ult_conexao'] = ''; 
     $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['botoes'] = $this->nmgp_botoes;
     if ($this->nmgp_opcao != "recarga" && $this->nmgp_opcao != "muda_form")
     {
         $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opc_ant'] = $this->nmgp_opcao;
     }
     else
     {
         $this->nmgp_opcao = $this->nmgp_opc_ant;
     }
     if (!empty($this->Campos_Mens_erro)) 
     {
         $this->Erro->mensagem(__FILE__, __LINE__, "critica", $this->Campos_Mens_erro); 
         $this->Campos_Mens_erro = "";
     }
     if (($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe'] == "F" || $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe'] == "R") && $this->nm_flag_iframe && empty($this->nm_todas_criticas))
     {
          if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe_ajax']))
          {
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['retorno_edit'] = array("edit", "");
          }
          else
          {
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['retorno_edit'] .= "&nmgp_opcao=edit";
          }
          if ($this->sc_evento == "insert" && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe'] == "F")
          {
              if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe_ajax']))
              {
                  $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['retorno_edit'] = array("edit", "fim");
              }
              else
              {
                  $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['retorno_edit'] .= "&rec=fim";
              }
          }
          $this->NM_close_db(); 
          $sJsParent = '';
          if ($this->NM_ajax_flag && isset($this->NM_ajax_info['param']['buffer_output']) && $this->NM_ajax_info['param']['buffer_output'])
          {
              if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe_ajax']))
              {
                  $this->NM_ajax_info['ajaxJavascript'][] = array("parent.ajax_navigate", $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['retorno_edit']);
              }
              else
              {
                  $sJsParent .= 'parent';
                  $this->NM_ajax_info['redir']['metodo'] = 'location';
                  $this->NM_ajax_info['redir']['action'] = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['retorno_edit'];
                  $this->NM_ajax_info['redir']['target'] = $sJsParent;
              }
              billing_item_form_pack_ajax_response();
              exit;
          }
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
            "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">

         <html><body>
         <script type="text/javascript">
<?php
    
    if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe_ajax']))
    {
        $opc = ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['run_iframe'] == "F" && $this->sc_evento == "insert") ? "fim" : "";
        echo "parent.ajax_navigate('edit', '" .$opc . "');";
    }
    else
    {
        echo $sJsParent . "parent.location = '" . $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['retorno_edit'] . "';";
    }
?>
         </script>
         </body></html>
<?php
         exit;
     }
   if ($this->NM_ajax_flag && 'add_new_line' == $this->NM_ajax_opcao)
   {
        $this->Form_Corpo(true);
   }
   elseif ($this->NM_ajax_flag && 'table_refresh' == $this->NM_ajax_opcao)
   {
        $this->Form_Table(true);
        $this->Form_Corpo(false, true);
   }
   else
   {
        $this->Form_Init();
        $this->Form_Table();
        $this->Form_Corpo();
        $this->Form_Fim();
   }
 }
   function jqueryCalendarDtFormat($sFormat, $sSep)
   {
       $sFormat = chunk_split(str_replace('yyyy', 'yy', $sFormat), 2, $sSep);

       if ($sSep == substr($sFormat, -1))
       {
           $sFormat = substr($sFormat, 0, -1);
       }

       return $sFormat;
   } // jqueryCalendarDtFormat

   function jqueryCalendarTimeStart($sFormat)
   {
       $aDateParts = explode(';', $sFormat);

       if (2 == sizeof($aDateParts))
       {
           $sTime = $aDateParts[1];
       }
       else
       {
           $sTime = 'hh:mm:ss';
       }

       return str_replace(array('h', 'm', 'i', 's'), array('0', '0', '0', '0'), $sTime);
   } // jqueryCalendarTimeStart

   function jqueryCalendarWeekInit($sDay)
   {
       switch ($sDay) {
           case 'MO': return 1; break;
           case 'TU': return 2; break;
           case 'WE': return 3; break;
           case 'TH': return 4; break;
           case 'FR': return 5; break;
           case 'SA': return 6; break;
           default  : return 7; break;
       }
   } // jqueryCalendarWeekInit

   function jqueryIconFile($sModule)
   {
       if ('calendar' == $sModule)
       {
           if (isset($this->arr_buttons['bcalendario']) && isset($this->arr_buttons['bcalendario']['type']) && 'image' == $this->arr_buttons['bcalendario']['type'])
           {
               $sImage = $this->arr_buttons['bcalendario']['image'];
           }
       }
       elseif ('calculator' == $sModule)
       {
           if (isset($this->arr_buttons['bcalculadora']) && isset($this->arr_buttons['bcalculadora']['type']) && 'image' == $this->arr_buttons['bcalculadora']['type'])
           {
               $sImage = $this->arr_buttons['bcalculadora']['image'];
           }
       }

       return $this->Ini->path_icones . '/' . $sImage;
   } // jqueryIconFile


 function new_date_format($type, $field)
 {
     $new_date_format = '';

     if ('DT' == $type)
     {
         $date_format  = $this->field_config[$field]['date_format'];
         $date_sep     = $this->field_config[$field]['date_sep'];
         $date_display = $this->field_config[$field]['date_display'];
         $time_format  = '';
         $time_sep     = '';
         $time_display = '';
     }
     elseif ('DH' == $type)
     {
         $date_format  = false !== strpos($this->field_config[$field]['date_format'] , ';') ? substr($this->field_config[$field]['date_format'] , 0, strpos($this->field_config[$field]['date_format'] , ';')) : $this->field_config[$field]['date_format'];
         $date_sep     = $this->field_config[$field]['date_sep'];
         $date_display = false !== strpos($this->field_config[$field]['date_display'], ';') ? substr($this->field_config[$field]['date_display'], 0, strpos($this->field_config[$field]['date_display'], ';')) : $this->field_config[$field]['date_display'];
         $time_format  = false !== strpos($this->field_config[$field]['date_format'] , ';') ? substr($this->field_config[$field]['date_format'] , strpos($this->field_config[$field]['date_format'] , ';') + 1) : '';
         $time_sep     = $this->field_config[$field]['time_sep'];
         $time_display = false !== strpos($this->field_config[$field]['date_display'], ';') ? substr($this->field_config[$field]['date_display'], strpos($this->field_config[$field]['date_display'], ';') + 1) : '';
     }
     elseif ('HH' == $type)
     {
         $date_format  = '';
         $date_sep     = '';
         $date_display = '';
         $time_format  = $this->field_config[$field]['date_format'];
         $time_sep     = $this->field_config[$field]['time_sep'];
         $time_display = $this->field_config[$field]['date_display'];
     }

     if ('DT' == $type || 'DH' == $type)
     {
         $date_array = array();
         $date_index = 0;
         $date_ult   = '';
         for ($i = 0; $i < strlen($date_format); $i++)
         {
             $char = strtolower(substr($date_format, $i, 1));
             if (in_array($char, array('d', 'm', 'y', 'a')))
             {
                 if ('a' == $char)
                 {
                     $char = 'y';
                 }
                 if ($char == $date_ult)
                 {
                     $date_array[$date_index] .= $char;
                 }
                 else
                 {
                     if ('' != $date_ult)
                     {
                         $date_index++;
                     }
                     $date_array[$date_index] = $char;
                 }
             }
             $date_ult = $char;
         }

         $disp_array = array();
         $date_index = 0;
         $date_ult   = '';
         for ($i = 0; $i < strlen($date_display); $i++)
         {
             $char = strtolower(substr($date_display, $i, 1));
             if (in_array($char, array('d', 'm', 'y', 'a')))
             {
                 if ('a' == $char)
                 {
                     $char = 'y';
                 }
                 if ($char == $date_ult)
                 {
                     $disp_array[$date_index] .= $char;
                 }
                 else
                 {
                     if ('' != $date_ult)
                     {
                         $date_index++;
                     }
                     $disp_array[$date_index] = $char;
                 }
             }
             $date_ult = $char;
         }

         $date_final = array();
         foreach ($date_array as $date_part)
         {
             if (in_array($date_part, $disp_array))
             {
                 $date_final[] = $date_part;
             }
         }

         $date_format = implode($date_sep, $date_final);
     }
     if ('HH' == $type || 'DH' == $type)
     {
         $time_array = array();
         $time_index = 0;
         $time_ult   = '';
         for ($i = 0; $i < strlen($time_format); $i++)
         {
             $char = strtolower(substr($time_format, $i, 1));
             if (in_array($char, array('h', 'i', 's')))
             {
                 if ($char == $time_ult)
                 {
                     $time_array[$time_index] .= $char;
                 }
                 else
                 {
                     if ('' != $time_ult)
                     {
                         $time_index++;
                     }
                     $time_array[$time_index] = $char;
                 }
             }
             $time_ult = $char;
         }

         $disp_array = array();
         $time_index = 0;
         $time_ult   = '';
         for ($i = 0; $i < strlen($time_display); $i++)
         {
             $char = strtolower(substr($time_display, $i, 1));
             if (in_array($char, array('h', 'i', 's')))
             {
                 if ($char == $time_ult)
                 {
                     $disp_array[$time_index] .= $char;
                 }
                 else
                 {
                     if ('' != $time_ult)
                     {
                         $time_index++;
                     }
                     $disp_array[$time_index] = $char;
                 }
             }
             $time_ult = $char;
         }

         $time_final = array();
         foreach ($time_array as $time_part)
         {
             if (in_array($time_part, $disp_array))
             {
                 $time_final[] = $time_part;
             }
         }

         $time_format = implode($time_sep, $time_final);
     }

     if ('DT' == $type)
     {
         $old_date_format = $date_format;
     }
     elseif ('DH' == $type)
     {
         $old_date_format = $date_format . ';' . $time_format;
     }
     elseif ('HH' == $type)
     {
         $old_date_format = $time_format;
     }

     for ($i = 0; $i < strlen($old_date_format); $i++)
     {
         $char = substr($old_date_format, $i, 1);
         if ('/' == $char)
         {
             $new_date_format .= $date_sep;
         }
         elseif (':' == $char)
         {
             $new_date_format .= $time_sep;
         }
         else
         {
             $new_date_format .= $char;
         }
     }

     $this->field_config[$field]['date_format'] = $new_date_format;
     if ('DH' == $type)
     {
         $new_date_format                                      = explode(';', $new_date_format);
         $this->field_config[$field]['date_format_js']        = $new_date_format[0];
         $this->field_config[$field . '_hora']['date_format'] = $new_date_format[1];
         $this->field_config[$field . '_hora']['time_sep']    = $this->field_config[$field]['time_sep'];
     }
 } // new_date_format

   function SC_fast_search($field, $arg_search, $data_search)
   {
      if (empty($data_search)) 
      {
          unset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter']);
          unset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['total']);
          unset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['fast_search']);
          if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_detal']) && !empty($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_detal'])) 
          {
              $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter'] = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_detal'];
          }
          return;
      }
      $comando = "";
      if ($_SESSION['scriptcase']['charset'] != "UTF-8" && NM_is_utf8($data_search))
      {
          $data_search = NM_conv_charset($data_search, $_SESSION['scriptcase']['charset'], "UTF-8");
      }
      $sv_data = $data_search;
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "ID2", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "BCODE", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "INVOICE", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "ITEM", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "LIN", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "SQ", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "UNIT", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "STYLE", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "DESCRIP", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "WIDTH", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "COLOR", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "CUST_ORDER", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "OUR_ORDER", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "DYE_ORDER", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "DYE_LOT", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "PRICE", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "AMOUNT", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "CASES", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "SMIT", $arg_search, $data_search);
      }
      if ($field == "SC_all_Cmp") 
      {
          $this->SC_monta_condicao($comando, "MEMO", $arg_search, $data_search);
      }
      if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_detal']) && !empty($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_detal']) && !empty($comando)) 
      {
          $comando = $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_detal'] . " and (" .  $comando . ")";
      }
      if (empty($comando)) 
      {
          $comando = " 1 <> 1 "; 
      }
      $sc_where = " where " . $comando;
      $nmgp_select = "SELECT count(*) from " . $this->Ini->nm_tabela . $sc_where; 
      $_SESSION['scriptcase']['sc_sql_ult_comando'] = $nmgp_select; 
      $rt = $this->Db->Execute($nmgp_select) ; 
      if ($rt === false && !$rt->EOF && $GLOBALS["NM_ERRO_IBASE"] != 1) 
      { 
          $this->Erro->mensagem (__FILE__, __LINE__, "banco", $this->Ini->Nm_lang['lang_errm_dber'], $this->Db->ErrorMsg()); 
          exit ; 
      }  
     $qt_geral_reg_billing_item_form = isset($rt->fields[0]) ? $rt->fields[0] - 1 : 0; 
     $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['total'] = $qt_geral_reg_billing_item_form;
      $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['where_filter'] = $comando;
      $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['fast_search'][0] = $field;
      $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['fast_search'][1] = $arg_search;
      $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['fast_search'][2] = $sv_data;
      $rt->Close(); 
   }
   function SC_monta_condicao(&$comando, $nome, $condicao, $campo, $tp_campo="")
   {
      $nm_aspas   = "'";
      $nm_numeric = array();
      $campo_join = strtolower(str_replace(".", "_", $nome));
      $nm_ini_lower = "";
      $nm_fim_lower = "";
      $nm_numeric[] = "item";$nm_numeric[] = "lin";$nm_numeric[] = "sq";$nm_numeric[] = "price";$nm_numeric[] = "amount";$nm_numeric[] = "cost";$nm_numeric[] = "cost_yd";$nm_numeric[] = "gp";$nm_numeric[] = "gp_yd";$nm_numeric[] = "pc";$nm_numeric[] = "id2";
      if (in_array($campo_join, $nm_numeric))
      {
         if ($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['decimal_db'] == ".")
         {
             $nm_aspas = "";
         }
         if (is_array($campo))
         {
             foreach ($campo as $Ind => $Cmp)
             {
                if (!is_numeric($Cmp))
                {
                    return;
                }
                if ($Cmp == "")
                {
                    $campo[$Ind] = 0;
                }
             }
         }
         else
         {
             if (!is_numeric($campo))
             {
                 return;
             }
             if ($campo == "")
             {
                $campo = 0;
             }
         }
      }
      $Nm_datas[] = "date_";$Nm_datas[] = "adate_";$Nm_datas[] = "edate_";
          if (in_array($campo_join, $Nm_datas) && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_access))
          {
             $nm_aspas = "#";
          }
         if (in_array($campo_join, $nm_numeric) && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres) && (strtoupper($condicao) == "II" || strtoupper($condicao) == "QP" || strtoupper($condicao) == "NP"))
         {
             $nome     = "CAST ($nome AS TEXT)";
             $nm_aspas = "'";
         }
         if (in_array($campo_join, $Nm_datas) && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres))
         {
             $nome     = "to_char ($nome, 'YYYY-MM-DD')";
         }
         if (substr($tp_campo, 0, 4) == "DATE" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_sybase))
         {
             $nome     = "str_replace (convert(char(10),$nome,102), '.', '-') + ' ' + convert(char(8),$nome,20)";
         }
         if (substr($tp_campo, 0, 4) == "DATE" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_mssql))
         {
             $nome     = "convert(char(23),$nome,121)";
         }
         if (substr($tp_campo, 0, 5) == "TIMES" && in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_oracle))
         {
             $nome     = "TO_DATE(TO_CHAR($nome, 'yyyy-mm-dd hh24:mi:ss'), 'yyyy-mm-dd hh24:mi:ss')";
             $tp_campo = "DATE" . substr($tp_campo, 4);
         }
         $comando .= (!empty($comando) ? " or " : "");
         if (is_array($campo))
         {
             $prep = "";
             foreach ($campo as $Ind => $Cmp)
             {
                 $prep .= (!empty($prep)) ? "," : "";
                 $Cmp   = substr($this->Db->qstr($Cmp), 1, -1);
                 $prep .= $nm_aspas . $Cmp . $nm_aspas;
             }
             $prep .= (empty($prep)) ? $nm_aspas . $nm_aspas : "";
             $comando .= $nm_ini_lower . $nome . $nm_fim_lower . " in (" . $prep . ")";
             return;
         }
         $campo  = substr($this->Db->qstr($campo), 1, -1);
         switch (strtoupper($condicao))
         {
            case "EQ":     // 
               $comando        .= $nm_ini_lower . $nome . $nm_fim_lower . " = " . $nm_aspas . $campo . $nm_aspas;
            break;
            case "II":     // 
               $comando        .= $nm_ini_lower . $nome . $nm_fim_lower . " like '" . $campo . "%'";
            break;
            case "QP":     // 
               if (substr($tp_campo, 0, 4) == "DATE")
               {
                   $NM_cmd     = "";
                   if ($this->NM_data_qp['ano'] != "____")
                   {
                       $NM_cmd     .= (empty($NM_cmd)) ? "" : " and ";
                       if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres))
                       {
                           $NM_cmd     .= "extract('year' from $nome) = " . $this->NM_data_qp['ano'];
                       }
                       elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_ibase))
                       {
                           $NM_cmd     .= "extract(year from $nome) = " . $this->NM_data_qp['ano'];
                       }
                       else
                       {
                       $NM_cmd     .= "year($nome) = " . $this->NM_data_qp['ano'];
                       }
                   }
                   if ($this->NM_data_qp['mes'] != "__")
                   {
                       $NM_cmd     .= (empty($NM_cmd)) ? "" : " and ";
                       if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres))
                       {
                           $NM_cmd     .= "extract('month' from $nome) = " . $this->NM_data_qp['mes'];
                       }
                       elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_ibase))
                       {
                           $NM_cmd     .= "extract(month from $nome) = " . $this->NM_data_qp['mes'];
                       }
                       else
                       {
                       $NM_cmd     .= "month($nome) = " . $this->NM_data_qp['mes'];
                       }
                   }
                   if ($this->NM_data_qp['dia'] != "__")
                   {
                       $NM_cmd     .= (empty($NM_cmd)) ? "" : " and ";
                       if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres))
                       {
                           $NM_cmd     .= "extract('day' from $nome) = " . $this->NM_data_qp['dia'];
                       }
                       elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_ibase))
                       {
                           $NM_cmd     .= "extract(day from $nome) = " . $this->NM_data_qp['dia'];
                       }
                       else
                       {
                       $NM_cmd     .= "day($nome) = " . $this->NM_data_qp['dia'];
                       }
                   }
                   if (!empty($NM_cmd))
                   {
                       $NM_cmd     = " (" . $NM_cmd . ")";
                       $comando        .= $NM_cmd;
                   }
               }
               else
               {
                   $comando        .= $nm_ini_lower . $nome . $nm_fim_lower ." like '%" . $campo . "%'";
               }
            break;
            case "NP":     // 
               if (substr($tp_campo, 0, 4) == "DATE")
               {
                   $NM_cmd     = "";
                   if ($this->NM_data_qp['ano'] != "____")
                   {
                       $NM_cmd     .= (empty($NM_cmd)) ? "" : " and ";
                       if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres))
                       {
                           $NM_cmd     .= "extract('year' from $nome) <> " . $this->NM_data_qp['ano'];
                       }
                       elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_ibase))
                       {
                           $NM_cmd     .= "extract(year from $nome) <> " . $this->NM_data_qp['ano'];
                       }
                       else
                       {
                       $NM_cmd     .= "year($nome) <> " . $this->NM_data_qp['ano'];
                       }
                   }
                   if ($this->NM_data_qp['mes'] != "__")
                   {
                       $NM_cmd     .= (empty($NM_cmd)) ? "" : " and ";
                       if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres))
                       {
                           $NM_cmd     .= "extract('month' from $nome) <> " . $this->NM_data_qp['mes'];
                       }
                       elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_ibase))
                       {
                           $NM_cmd     .= "extract(month from $nome) <> " . $this->NM_data_qp['mes'];
                       }
                       else
                       {
                       $NM_cmd     .= "month($nome) <> " . $this->NM_data_qp['mes'];
                       }
                   }
                   if ($this->NM_data_qp['dia'] != "__")
                   {
                       $NM_cmd     .= (empty($NM_cmd)) ? "" : " and ";
                       if (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_postgres))
                       {
                           $NM_cmd     .= "extract('day' from $nome) <> " . $this->NM_data_qp['dia'];
                       }
                       elseif (in_array(strtolower($this->Ini->nm_tpbanco), $this->Ini->nm_bases_ibase))
                       {
                           $NM_cmd     .= "extract(day from $nome) <> " . $this->NM_data_qp['dia'];
                       }
                       else
                       {
                       $NM_cmd     .= "day($nome) <> " . $this->NM_data_qp['dia'];
                       }
                   }
                   if (!empty($NM_cmd))
                   {
                       $NM_cmd     = " (" . $NM_cmd . ")";
                       $comando        .= $NM_cmd;
                   }
               }
               else
               {
                   $comando        .= $nm_ini_lower . $nome . $nm_fim_lower ." not like '%" . $campo . "%'";
               }
            break;
            case "DF":     // 
               if ($tp_campo == "DTDF" || $tp_campo == "DATEDF")
               {
                   $comando        .= $nm_ini_lower . $nome . $nm_fim_lower . " not like '%" . $campo . "%'";
               }
               else
               {
                   $comando        .= $nm_ini_lower . $nome . $nm_fim_lower . " <> " . $nm_aspas . $campo . $nm_aspas;
               }
            break;
            case "GT":     // 
               $comando        .= " $nome > " . $nm_aspas . $campo . $nm_aspas;
            break;
            case "GE":     // 
               $comando        .= " $nome >= " . $nm_aspas . $campo . $nm_aspas;
            break;
            case "LT":     // 
               $comando        .= " $nome < " . $nm_aspas . $campo . $nm_aspas;
            break;
            case "LE":     // 
               $comando        .= " $nome <= " . $nm_aspas . $campo . $nm_aspas;
            break;
         }
   }
function nmgp_redireciona($tipo=0)
{
   global $nm_apl_dependente;
   if (isset($_SESSION['scriptcase']['nm_sc_retorno']) && !empty($_SESSION['scriptcase']['nm_sc_retorno']) && $_SESSION['scriptcase']['sc_tp_saida'] != "D" && $nm_apl_dependente != 1) 
   {
       $nmgp_saida_form = $_SESSION['scriptcase']['nm_sc_retorno'];
   }
   else
   {
       $nmgp_saida_form = $_SESSION['scriptcase']['sc_url_saida'][$this->Ini->sc_page];
   }
   if ($tipo == 2 && isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_outra_jan']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_outra_jan'])
   {
       $nmgp_saida_form = "billing_item_form_fim.php";
   }
   if (isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['redir']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['redir'] == 'redir')
   {
       unset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']);
   }
   unset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['opc_ant']);
   $diretorio = explode("/", $nmgp_saida_form);
   $cont = count($diretorio);
   $apl = $diretorio[$cont - 1];
   $apl = str_replace(".php", "", $apl);
   $pos = strpos($apl, "?");
   if ($pos !== false)
   {
       $apl = substr($apl, 0, $pos);
   }
   if ($tipo != 1 && $tipo != 2)
   {
       unset($_SESSION['sc_session'][$this->Ini->sc_page][$apl]['where_orig']);
   }
   if ($this->NM_ajax_flag)
   {
       $this->NM_ajax_info['redir']['metodo']              = 'post';
       $this->NM_ajax_info['redir']['action']              = $nmgp_saida_form;
       $this->NM_ajax_info['redir']['target']              = '_self';
       $this->NM_ajax_info['redir']['script_case_init']    = $this->Ini->sc_page;
       $this->NM_ajax_info['redir']['script_case_session'] = session_id();
       if (0 == $tipo)
       {
           $this->NM_ajax_info['redir']['nmgp_url_saida'] = $this->nm_location;
       }
       billing_item_form_pack_ajax_response();
       exit;
   }
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
            "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">

   <HTML>
   <HEAD>
    <META http-equiv="Content-Type" content="text/html; charset=<?php echo $_SESSION['scriptcase']['charset_html'] ?>" />
    <META http-equiv="Expires" content="Fri, Jan 01 1900 00:00:00 GMT"/>
    <META http-equiv="Last-Modified" content="<?php echo gmdate("D, d M Y H:i:s"); ?> GMT"/>
    <META http-equiv="Cache-Control" content="no-store, no-cache, must-revalidate"/>
    <META http-equiv="Cache-Control" content="post-check=0, pre-check=0"/>
    <META http-equiv="Pragma" content="no-cache"/>
   </HEAD>
   <BODY>
   <FORM name="form_ok" method="POST" action="<?php echo NM_encode_input($nmgp_saida_form); ?>" target="_self">
<?php
   if ($tipo == 0)
   {
?>
     <INPUT type="hidden" name="nmgp_url_saida" value="<?php echo NM_encode_input($this->nm_location); ?>"> 
<?php
   }
?>
     <INPUT type="hidden" name="script_case_init" value="<?php echo NM_encode_input($this->Ini->sc_page); ?>"> 
     <INPUT type="hidden" name="script_case_session" value="<?php echo NM_encode_input(session_id()); ?>"> 
   </FORM>
   <SCRIPT type="text/javascript">
      bLigEditLookupCall = <?php if ($this->lig_edit_lookup_call) { ?>true<?php } else { ?>false<?php } ?>;
      function scLigEditLookupCall()
      {
<?php
   if ($this->lig_edit_lookup && isset($_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_modal']) && $_SESSION['sc_session'][$this->Ini->sc_page]['billing_item_form']['sc_modal'])
   {
?>
        parent.<?php echo $this->lig_edit_lookup_cb; ?>(<?php echo $this->lig_edit_lookup_row; ?>);
<?php
   }
   elseif ($this->lig_edit_lookup)
   {
?>
        opener.<?php echo $this->lig_edit_lookup_cb; ?>(<?php echo $this->lig_edit_lookup_row; ?>);
<?php
   }
?>
      }
      if (bLigEditLookupCall)
      {
        scLigEditLookupCall();
      }
      document.form_ok.submit();
   </SCRIPT>
   </BODY>
   </HTML>
<?php
  exit;
}
}
?>
