SC6 — Itens de Pedido de Venda
Itens do pedido. Cada SC5 (cabecalho) tem N SC6 (itens). Produto, quantidade, preco, TES, CFOP. Chave C6_FILIAL+C6_NUM+C6_ITEM.
SC6 e a tabela de itens do pedido — cada produto/quantidade dentro de um SC5 vira 1 registro aqui. Liberacao (SC9) e geracao de NF (SF2/SD2) puxam dela.
Campos principais
| Campo | Tipo | Descricao |
| C6_FILIAL | C | Filial |
| C6_NUM | C | Pedido (link SC5) |
| C6_ITEM | C | Sequencia do item (01, 02, 03...) |
| C6_PRODUTO | C | Codigo produto (SB1) |
| C6_DESCRI | C | Descricao (copiada de SB1 mas editavel) |
| C6_QTDVEN | N | Quantidade vendida |
| C6_QTDENT | N | Quantidade ja entregue (faturada) |
| C6_PRCVEN | N | Preco unitario |
| C6_VALOR | N | Valor total do item (qtd * preco) |
| C6_TES | C | Tipo Entrada/Saida (SF4) |
| C6_CF | C | CFOP (5101, 5102, 6101...) |
| C6_LOCAL | C | Armazem de saida |
| C6_LOTECTL | C | Lote (se produto rastreado) |
| C6_ENTREG | D | Data prevista entrega |
| C6_VALDESC | N | Valor de desconto aplicado |
| C6_NOTA | C | NF gerada (link com SF2) |
| C6_BLQ | C | R=cancelado, ' '=ativo |
| C6_QTDLIB | N | Quantidade ja liberada (em SC9) |
Indices
| Ordem | Chave |
| 1 | C6_FILIAL+C6_NUM+C6_ITEM+C6_PRODUTO |
| 2 | C6_FILIAL+C6_PRODUTO+C6_NUM |
| 3 | C6_FILIAL+C6_NUM+C6_PRODUTO |
| 4 | C6_FILIAL+C6_ENTREG+C6_NUM |
Codigo tipico
// Iterar itens de um pedido
SC6->(DBSetOrder(1))
SC6->(DBSeek(xFilial("SC6") + cNumPed))
While !SC6->(Eof()) .And. SC6->C6_NUM == cNumPed
If Empty(SC6->C6_BLQ) // ignora cancelados
// Calcular saldo a faturar
nSaldo := SC6->C6_QTDVEN - SC6->C6_QTDENT
If nSaldo > 0
ConOut("Item " + SC6->C6_ITEM + " saldo: " + cValToChar(nSaldo))
EndIf
EndIf
SC6->(DBSkip())
EndDo
// Pedidos abertos de um produto
SC6->(DBSetOrder(2))
SC6->(DBSeek(xFilial("SC6") + "100001"))
While !SC6->(Eof()) .And. SC6->C6_PRODUTO == "100001"
If SC6->C6_QTDVEN > SC6->C6_QTDENT // saldo a faturar
// ...
EndIf
SC6->(DBSkip())
EndDo
Tabelas relacionadas
| Tabela | Relacao |
| SC5 | Cabecalho do pedido |
| SC9 | Liberacao do item (1 SC6 -> 1+ SC9) |
| SF4 | TES (C6_TES aponta) |
| SB1 | Produto |
| SD2 | Item da NF gerada (apos faturar) |
Pegadinhas
- RecNo do SC6 e usado por MaLibDoFat — guarde o RecNo se for chamar.
- C6_ITEM nem sempre e sequencial — pode ter gaps por exclusao.
- Cancelado vs Faturado: C6_BLQ = "R" cancelado; C6_QTDENT >= C6_QTDVEN = totalmente faturado.
- Saldo a liberar: C6_QTDVEN - C6_QTDLIB > 0.
- Multipla SC9 por SC6: liberacao parcial gera varias SC9 pro mesmo item.
Veja também