Ir para conteúdo
Fórum Script Brasil

Iceguy

Membros
  • Total de itens

    274
  • Registro em

  • Última visita

Tudo que Iceguy postou

  1. pelo que li, função 603 funciona no access 2000, no 2002/2003, 2007 e 2010 foi descontinuada essa funcionalidade
  2. Iceguy

    segurança do access 2007

    Eu tenho em algum lugar nas minhas coisas aqui um código que funciona assim, você cria um banco com a mesma data de criação do que você quer abrir e executa ele. Aí ele te da a senha Isso pra .mdb
  3. Ele já postou isso no forum do M$ Office http://scriptbrasil.com.br/forum/index.php?showtopic=158776 Colega, não serviu como auxílio aquele exemplo que passei?
  4. Isso ajuda? http://g1.globo.com/tecnologia/noticia/201...adas-no-pc.html
  5. Vê se isso ajuda http://support.microsoft.com/kb/300688
  6. Iceguy

    Comando Visible

    Na verdade não é necessário dentro de uma condição If a utilização de =True ou =False para uma variavel ou método booleano, somente a variavel e ele já entende que se for true ele entra no if e caso seja false ele ou sai ou entra no else. No seu código você utilizou o elseif, mas não é necessário mais um teste de comparação já que um controle booleano tem apenas 2 estados, então você testa somente um. E eu não lembro se -1 é true ou false, tenho que testar isso depois
  7. Iceguy

    segurança do access 2007

    o accdb password get funciona na força bruta também?
  8. A função é assim: DLockUp([Campo na Tabela], [Tabela], [Critério]) Aí se sua tabela é Usuarios, o campo na tabela onde está a senha é senhaUsuario e o campo na tabela onde está o nome do usuario é nomeUsuario, então ela fica assim If SeuTextBoxSenha = DLockUp("senhaUsuario", "Usuarios", "nomeUsuario = '" & SeuTextBoxUsuario & "'") Then com essa função você traz a senha do usuário que está tentando se logar e compara ela com a informada no campo Você copiou de onde esse código? provavelmente tem coisa editada errada aí, mas ao dar erro você coloca depurar e vê onde parou
  9. Supondo uma tabela tblUsuarios com os campos login e senha, você faz um formulário com campos pra usuário e senha e um botão acessar com o código assim: If textBoxSenha = DLookUp("senha", "tblUsuarios", "usuario = '" & textBoxUsuario & "'") Then <Rotina caso o usuário tenha acesso> Else <Rotina caso o usuário não tenha acesso> End If
  10. No botão fechar você clica com botão direito e coloca construir evento, depois código. Nele você coloca On Error GoTo Erro DoCmd.Close acReport, Me.Name Sair: Exit Sub Erro: MsgBox err.Description, vbCritical Resume Sair E no botão imprimir coloca: Me.Print Nem testei, mas deve funcionar isso
  11. Existe um forum específico de Access, talvez um Moderador/Administrador possa mover esse tópico pra lá. Um exemplo que pode te ajudar é assim, em um banco de dados novo, crie um módulo com o seguinte código: Private Sub Configurar() Dim db As Database Dim sqlstr As String Set db = CurrentDb() sqlstr = "CREATE TABLE tblAtividades(data DATETIME, atividade INT," & _ " responsavel VARCHAR(50), Primary Key(Data, atividade))" db.Execute (sqlstr) sqlstr = "CREATE TABLE tblEmpregados(nome VARCHAR(50),Primary Key(nome))" db.Execute (sqlstr) sqlstr = "INSERT INTO tblEmpregados (nome) VALUES ('José')" db.Execute (sqlstr) sqlstr = "INSERT INTO tblEmpregados (nome) VALUES ('Maria')" db.Execute (sqlstr) sqlstr = "INSERT INTO tblEmpregados (nome) VALUES ('João')" db.Execute (sqlstr) db.Close Set db = Nothing End Sub Execute o código (Apertando F5) Agora ao executar a consulta SELECT nome FROM tblEmpregados WHERE nome NOT IN ( SELECT responsavel FROM tblAtividades WHERE data = #03/10/2011# ); Retorna José, Maria e João Execute agora INSERT INTO tblAtividades (data, atividade, responsavel) VALUES (#03/10/2011#, 1, 'Maria'); Agora novamente a consulta SELECT nome FROM tblEmpregados WHERE nome NOT IN ( SELECT responsavel FROM tblAtividades WHERE data = #03/10/2011# ); Note que agora retorna somente José e João, ou seja, tente criar um formulário com uma textBox para a data e uma comboBox para cada atividade. Coloque um código que ao atualizar uma comboBox ele crie a atividade para aquela pessoa em específico e grave no banco, depois de um Requery nas demais comboBox usando a consulta do exemplo, assim você não deixa uma pessoa fazer duas ou mais atividades no mesmo dia. Insira essa função em um módulo, ela serve para dar um Requery em todos os combos é a seguinte Public Sub ComboBoxRequery(frm As Form) Dim controle As Control For Each controle In frm.Controls Select Case frm.ControlType Case acComboBox: controle.Requery Case Else: End Select Next controle End Sub E para chamá-la use o código no evento de atualização de cada comboBox assim: ComboBoxRequery Me Espero que isso possa ajudar
  12. Desculpa pelo idCheque = 1, foi só um teste meu aqui daí coloquei 1 e 2, pra ter certeza que ele atualizava só o 1 na clausula where tu coloca o id, que é tipo assim, o item que relaciona os dois. Imagino eu que o id dos dados do cheque sejam ligados pelo mesmo id que o livro caixa, então você relaciona ele ali
  13. Tenta assim: Dim db As Database Dim sqlstr As String Set db = CurrentDb() sqlstr = "UPDATE tbPagtosCheque SET repassado = TRUE, datarepasse = #" & Format(Now(), "mm/dd/yyyy") & _ "#, destino = '" & Forms![frmLivroCaixa]![Detalhes] & "' WHERE idCheque = 1" db.Execute (sqlstr) db.Close Set db = Nothing Acho que isso resolve seu problema
  14. Iceguy

    Excell

    Usa assim: =SE(E(E20>0; E20<>""): "E20 * F20; "") Com essa fórmula, se E20 for maior que zero E diferente de vazio ele retorna a multiplicação de E20 por F20, caso contrário ele retorna a cálula vazia
  15. Um artigo que é bem antigo, mas parece bom. Dá uma lida nele que você consegue fazer isso http://www.ativoaccess.com.br/mostra.artigo.php?artigo=58
  16. Iceguy

    AJUDA URGENTE

    Pode ser algum relacionamento errado, precisaria ver o banco e executar a mesma operação que você fez para entender o erro
  17. Assim você traz só os orçamentos que NÃO geraram pedidos SELECT TO.[código] FROM [tabela orçamento] AS TO WHERE EXISTS (SELECT TP.codigoorc FROM [Tabela Pedido] AS TP WHERE TO.[código] = TP.codigoorc) = FALSE; Se quiser os que geraram pedidos não é só buscar todos os pedidos? Ou existe pedido sem orçamento? Se existir pedido sem orçamento troque o FALSE por TRUE
  18. Iceguy

    Buscar o ultimo preço

    Pra buscar o último preço, usa isso: SELECT TOP 1 TP.preço FROM tabelaProdutos AS TP ORDER BY TP.MesPreco DESC A outra coisa que você quer é uma relação produtos(sem repetí-los) e pra cada um o último mês e o preço referente? Seria para verificar a situção atual dos preços?
  19. Não querendo me intrometer no projeto dos outros, mas você tem muita redundância de dados, não tem? Tente criar algo mais enxuto para ganhar e espaço para armazenamento e velocidade nas operações. Seria algo como tClientes contendo um código e as informações dos clientes tProdutos contendo informações dos produtor e serviços tOrcamento contendo informações exclusivas do orçamento, como datas, codCliente, etc tItensOrcados contendo os itens orçados, que seria codOrcamento, codProduto, qtdeProduto, e coisas do tipo E quando fosse gerar um pedido, teria um botão ou algo do tipo "Gerar Pedido" que faria assim tPedidos tabela com um código, codOrcamento, dtEntrega, etc, etc... Infos de um pedido em si Fica melhor porque você não tem redundância de dados, não grava na tabela cliente "João da Silva, tabela orcamento "João da Silva", tabela pedido "João da Silva", tabela nota fiscal "João da Silva", tabela contas a receber "João da Silva". Grava na tabela cliente "João da Silva", faz um link do orçamento ao cliente pelo código, do pedido ao orçaento, etc... E quando quiser acessar os dados do cliente lá na frente na nota fiscal, você vai usando JOINs e abre várias tabelas ao invés de abrir a "Tabela Mãe" com muito mais dados para buscar É claro que em algumas vezes compensa redundância em prol do desempenho, mas isso pra sistemas grandes, que imagino que não seja o caso de quem opte pelo M$ Access
  20. Pelo que entendi você tem Orçamentos e Pedidos, onde nem todo orçamento é um pedido, mas todo pedido é um orçamento, e você quer a relação de orçamentos que não gererem pedidos, certo? Assim você busca todos os códigos da tabelaOrcamentos que não existam na tabelaPedidos SELECT TO.cod FROM tabelaOrcamentos WHERE EXISTS (SELECT TP.cod FROM tabelaPedidos AS TP WHERE TO.cod = TP.cod) = FALSE;
  21. Application.FollowHyperlink "C:\teste.txt"
  22. fica assim DoCmd.OutputTo acOutputReport, "RPT_PEDIDO DE VENDAS NOTA", acFormatTXT, "C:\teste.txt" O "C:\teste.txt" é opcional, sem ele você tem que escolher o local de destino
  23. http://www.blueclaw-db.com/docmd_outputto_example.htm Aí explica como usar o comado DoCmd.OutputTo
×
×
  • Criar Novo...