SC7 e o pedido de compra formal — voce assume compromisso com o fornecedor. Apos aprovacao, vira NF de entrada (SF1). Pode ter cotacao (SC8) antes.
Campos principais
| Campo | Tipo | Descricao |
|---|
| C7_FILIAL | C | Filial |
| C7_NUM | C | Numero PC |
| C7_ITEM | C | Item |
| C7_FORNECE | C | Fornecedor |
| C7_LOJA | C | Loja |
| C7_PRODUTO | C | Produto |
| C7_QUANT | N | Quantidade |
| C7_PRECO | N | Preco unitario |
| C7_TOTAL | N | Total item |
| C7_DATPRF | D | Data prevista entrega |
| C7_EMISSAO | D | Emissao |
| C7_TES | C | TES |
| C7_QUJE | N | Quantidade ja recebida |
| C7_QTDEMP | N | Quantidade empenhada |
| C7_CONAPRO | C | Status aprovacao |
| C7_NUMSC | C | SC origem |
Indices
| Ordem | Chave |
|---|
| 1 | C7_FILIAL+C7_NUM+C7_ITEM+C7_SEQUEN |
| 2 | C7_FILIAL+C7_FORNECE+C7_LOJA+C7_NUM |
| 3 | C7_FILIAL+C7_PRODUTO+C7_NUM |
Codigo tipico
// PCs em aberto de um fornecedor
SC7->(DBSetOrder(2))
SC7->(DBSeek(xFilial("SC7") + cFor + cLoja))
While !SC7->(Eof()) .And. SC7->C7_FORNECE == cFor
If SC7->C7_QUANT > SC7->C7_QUJE // saldo a receber
nValor += (SC7->C7_QUANT - SC7->C7_QUJE) * SC7->C7_PRECO
EndIf
SC7->(DBSkip())
EndDo
Tabelas relacionadas
| Tabela | Relacao |
|---|
| SC1 | SC origem |
| SC8 | Cotacao origem |
| SF1/SD1 | NF de entrada que recebe o PC |
| SA2 | Fornecedor |
Pegadinhas
- Aprovacao em multi-nivel (alcada): C7_CONAPRO controla.
- PC pode ter recebimento parcial — C7_QUJE incrementa, C7_QUANT permanece.
- Cancelar PC com NF associada exige cancelar NF antes.
Veja também