Galera tive que incluir um campo em uma tabela especifica, agora como faço para compilar apenas os programas nos quais acessam essa tabela???
Olha, primeiramente você tem que localizar todos as rotinas que tem a tabela gravada internamente (pode-se usar rotinas que procuram texto dentro de arquivos), porém tem outra situação, tem que procurar as includes (arquivos *.i) e procurar as rotinas *.w e *.p que possuem estas includes, onde estas devem ser compiladas. Segundo, liste estas rotinas em arquivo e faça a compilação manual usando o comando COMPILE, exemplo: compile <nome da rotina> save. compile ftp/ft1008.w save. compile c:\datasul\ems206\especificos\ftp\ft1008rp.p save. Deu para dar uma visão?
Faça um teste... Pegue um de seus programas e compile da seguinte forma: compile programa.p xref xxx Vc vai ver que é gerado um arquivo "xxx" com todas as referencias de seu programa, separadas por espaço. A 1ª coluna é o nome do programa. A 2ª o nome do arquivo onde esta a referencia (no teu caso te interessa as referencias à tabela "abc") isso é porque a referencia à tabela pode estar em uma include que está dentro de seu programa e não diretamente em seu programa. Ou seja se vc fizesse uma pesquisa pelo texto do programa provavelmente alguns passariam pois o acesso a tabela não está nele e sim na include. Com a xref vc não teria esse problema. A 3ª é o numero da linha onde está a referencia. A 4ª é o tipo de referencia, e é aí que está o pulo do gato, vc precisa pegar todas as linhas que tem o texto "CREATE", "DELETE", "SORT-ACCESS", "ACCESS", "REFERENCE" e "UPDATE". Acho que estes tipos se explicam por si sós. As outras colunas fazem menção ao objeto da referencia, no seu caso o nome da tabela, ou tabela + campo. Aqui em montei um compilador que armazena essas informações em uma base, então basta consultar essa base e consigo saber tudo sobre os programas. Tipo "quais programas "dão" create na tabela x, ou qual programa chama o programa y. Ao inves disso, para simplificar, vc poderia fazer um programinha que lesse esse arquivo xxx e procurasse por determinados valores nessas colunas e armazenasse em outro arquivo os nomes dos programas encontrados. Depois vc usaria esta lista para montar um "pacote" de compilação. Qualquer coisa pode perguntar...