Discussões

Desabilitar o botão Editar quando um Pedido de vendas for faturado com a ajuda do SuiteScript

editado Jun 2, 2025 2:37PM Dentro SuiteCloud / Personalização

Aplica-se a

Produto: NetSuite 2023.1
 



Cenário

Como comportamento padrão do sistema, no momento, mesmo que você não seja um Administrador, poderá editar um Pedido de vendas quando Faturada.
Para evitar isso, um usuário pode ocultar o botão Editar em um Pedido de vendas que foi faturada para usuários que não estão definidos como Administrador.
Isso pode ser alcançado por um Script de evento do usuário ou Script do cliente.



Solução

  1. Crie um arquivo de script como o script abaixo
     
    define([ 'N/record', 'N/search', 'N/runtime' ], function(record, search,
    
    runtime) {
    
    function beforeLoad(scriptContext) {
    
    if (scriptContext.type == 'view') {
    
    var salesorderSearchObj = search.create({
    
    type : "salesorder",
    
    filters : [ [ "type", "anyof", "SalesOrd" ], "AND",
    
    [ "status", "anyof", "SalesOrd:G" ], "AND",
    
    [ "mainline", "is", "T" ] ],
    
    columns : [ search.createColumn({
    
    name : "mainline",
    
    label : "*"
    
    }), search.createColumn({
    
    name : "trandate",
    
    sort : search.Sort.ASC,
    
    label : "Date"
    
    }), search.createColumn({
    
    name : "asofdate",
    
    label : "As-Of Date"
    
    }), search.createColumn({
    
    name : "postingperiod",
    
    label : "Period"
    
    }), search.createColumn({
    
    name : "type",
    
    label : "Type"
    
    }), search.createColumn({
    
    name : "tranid",
    
    label : "Document Number"
    
    }), search.createColumn({
    
    name : "entity",
    
    label : "Name"
    
    }), search.createColumn({
    
    name : "account",
    
    label : "Account"
    
    }), search.createColumn({
    
    name : "memo",
    
    label : "Memo"
    
    }), search.createColumn({
    
    name : "amount",
    
    label : "Amount"
    
    }) ]
    
    });
    
    
    
    var searchResultCount = salesorderSearchObj.runPaged().count;
    
    log.debug("salesorderSearchObj result count", searchResultCount);
    
    salesorderSearchObj.run().each(function(result)

Olá, bem-vind@!

Faça login

Para ver todos os detalhes, faça o login.

Cadastre-se

Não tem uma conta? Clique aqui para começar!

Ranking

Gênio da Comunidade

1º Trimestre (Jan-Mar 2026)

Líderes desta semana

Líderes deste mês

Líderes de todos os tempos