danielrgoes Posted January 10, 2012 Report Share Posted January 10, 2012 E ai PessoalTo com o seguinte codigo para excluir todos os itens da pasta itens excluidos outlook := CreateOleObject('Outlook.Application'); NameSpace := outlook.GetNameSpace('MAPI'); ItensExcluidos := NameSpace.GetDefaultFolder(olFolderDeletedItems); i := 1; Gauge1.MaxValue := TotalExcluidos; while i <= TotalExcluidos do begin Gauge1.Progress := Gauge1.Progress + 1; ItemExcluido := ItensExcluidos.Items.item(i); ItemExcluido.delete; TotalExcluidos := TotalExcluidos - 1; end; Outlook := UnAssigned;Ate ai td bem funcionando porem eu gostaria de excluir apenas os itens que tenha o campo Para em brancoantes do ItemExcluido.delete;colar um if (o campor para em banco) thenDeletemais não acho o dito cujo do campo Quote Link to comment Share on other sites More sharing options...
0 danielrgoes Posted January 10, 2012 Author Report Share Posted January 10, 2012 Galera vamos ver se melhora pra alguém me ajudarEsse Codigo que eu postei ai embaixo é pra ele excluir os itens da pasta itens excluido. O que acontece é o seguinte eu fiz um programa para importar contatos (esta funcionando) try Gauge1.Progress := 1; MSExcel := CreateOleObject('Excel.Application'); MSExcel.WorkBooks.Add; MSExcel.WorkBooks.Open(caminho); MSExcel.Cells.SpecialCells(xlCellTypeLastCell, EmptyParam).Activate; Gauge1.MaxValue := MSExcel.ActiveCell.Row - 1; i := 2; while i <= MSExcel.ActiveCell.Row do begin Gauge1.Progress := Gauge1.Progress + 1; NewContactItem(MSExcel.ActiveSheet.Range['A' + IntToStr(i)].Value,MSExcel.ActiveSheet.Range['B' + IntToStr(i)].Value); i := i + 1; end; Except MSExcel.quit; MessageDlg('Erro ao Importar os Contatos (A)',mtWarning,[mbOK],0); end; so que antes de importar eu excluo (esta funcionando) outlook := CreateOleObject('Outlook.Application'); NameSpace := outlook.GetNameSpace('MAPI'); Contacts := NameSpace.GetDefaultFolder(olFolderContacts); i := 1; Total := Contacts.Items.Count; //TotalExcluidos := Contacts.Items.Count; Gauge1.MaxValue := Contacts.Items.Count; while i <= Total do begin Gauge1.Progress := Gauge1.Progress + 1; Contact := Contacts.Items.item(i); Contact.delete; Total := Total - 1; end;so que na hora que exclui os contatos vão para a pasta de itens excluidose eu não posso esvaziar essa pastaeu quero apenas excluir o que é contatonossa to quebrando a cabeça aki ehehehe Quote Link to comment Share on other sites More sharing options...
0 Jhonas Posted January 10, 2012 Report Share Posted January 10, 2012 ItensExcluidos := NameSpace.GetDefaultFolder(olFolderDeletedItems);Contacts := NameSpace.GetDefaultFolder(olFolderContacts);está meio confuso.... voce quer excluir um contato ou excluir um item dos itens excluídos ?abraço Quote Link to comment Share on other sites More sharing options...
0 danielrgoes Posted January 10, 2012 Author Report Share Posted January 10, 2012 Pessoal tive uma luz esta quase mais preciso de ajuda ainda achei essa linhaOMensagensFiltradas := Omensagens.Restrict(‘[ReceivedTime] >= ‘ + QuotedStr(’01/01/2007′));ela filtra todas as mensagensa por dataporem por data não da alguém sabe o parametro para saber se é email ou contato, pelo icone por exemploachei um tal de FlagIconOMensagensFiltradas := Omensagens.Restrict(‘[FlagIcon] = ' MAIS COMPARAR COM QUE ?????));alguém já usou isso?então Jhonas é assimPrimeiro eu excluo o contatoai ele vai pra Itens Excluidos do meu emailai eu tenho que excluir o contato excluido dos itens excluidosporem eu não posso excluir td que esta no itens excluidos eu tenho que saber o que é contato e o que é email Quote Link to comment Share on other sites More sharing options...
0 Jhonas Posted January 10, 2012 Report Share Posted January 10, 2012 jogue os itens excluidos em um memo e mostre como aparece Quote Link to comment Share on other sites More sharing options...
0 danielrgoes Posted January 11, 2012 Author Report Share Posted January 11, 2012 jogue os itens excluidos em um memo e mostre como apareceJoguei e aparecem todos que estão na caixa itens excluidos Quote Link to comment Share on other sites More sharing options...
0 Jhonas Posted January 11, 2012 Report Share Posted January 11, 2012 é para voce mostrar aqui ... não precisa ser tudo, somente uma parte abraço Quote Link to comment Share on other sites More sharing options...
0 danielrgoes Posted January 11, 2012 Author Report Share Posted January 11, 2012 é para voce mostrar aqui ... não precisa ser tudo, somente uma parte abraçoJhonas resolvi, não da forma que eu queria mais deu certopra ser email o campo Para e CC pelo menos tem que estar preenchidocomo eu não quero excluir o email usei assimOMensagensFiltradas := ItemExcluido.Restrict('[To] = ' + QuotedStr('') + ' AND ' + '[CC] = ' + QuotedStr(''));isso faz com que o OMensagensFiltradas fique apenas com a referencia dos itens que possuirem o campo Para = '' e CC = ''os contatos possuem essa caracteristicas.eu falei que não é ideal porque corro o risco de o usuario fazer um rascunho, excluir e depois ir lá no itens excluidos procuraro rascunho pode ter o campo Para e CC em brancoporem foi a unica solução que eu achei ate agora palhativa mais server Quote Link to comment Share on other sites More sharing options...
Question
danielrgoes
E ai Pessoal
To com o seguinte codigo para excluir todos os itens da pasta itens excluidos
outlook := CreateOleObject('Outlook.Application');
NameSpace := outlook.GetNameSpace('MAPI');
ItensExcluidos := NameSpace.GetDefaultFolder(olFolderDeletedItems);
i := 1;
Gauge1.MaxValue := TotalExcluidos;
while i <= TotalExcluidos do
begin
Gauge1.Progress := Gauge1.Progress + 1;
ItemExcluido := ItensExcluidos.Items.item(i);
ItemExcluido.delete;
TotalExcluidos := TotalExcluidos - 1;
end;
Outlook := UnAssigned;
Ate ai td bem funcionando
porem eu gostaria de excluir apenas os itens que tenha o campo Para em branco
antes do ItemExcluido.delete;
colar um if (o campor para em banco) then
Delete
mais não acho o dito cujo do campo
Link to comment
Share on other sites
7 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.